javascript - 如何使用 yii2fullcalendar 处理长按事件

标签 javascript yii2 fullcalendar

我使用 yii2fullcalendar用于我的网站。

在移动设备上,虽然我们只想向下滚动屏幕,但会触发“dayClick”事件。

如何将“dayClick”更改为一天的双击事件?

更新: 实际上,我想避免在移动设备上使用不便。所以,如果我们可以设置一个“长按”参数,而不是想办法将“dayClick”更改为一天的双击事件,那就更好了。

这是我的view.php

<?= \yii2fullcalendar\yii2fullcalendar::widget(array(
        'options' => [
        ],
        'clientOptions' => [
            'allDaySlot' => false,
            'selectHelper' => true,
            'eventClick' => new JsExpression($JSEventClick),
            'dayClick' => new JsExpression($JSDayClick),
            'eventMouseover' =>new JsExpression($JSDayMouseover),
            'eventMouseout' =>new JsExpression($JSDayMouseout),
            'defaultView' => 'agendaWeek',
            'firstDay' => date('w'),  // Sunday=0, Monday=1, Tuesday=2, etc.
            'header' => [
                'center'=>'prev,next today',
                'left'=>'',
                'right'=>'agendaDay,agendaWeek,month',
            ],
        ],
        'ajaxEvents' => Url::to(......)
    ));
    ?>

谢谢。

最佳答案

您应该能够使用以下算法修改 dayClick 函数以处理双击:

  • 将变量 clicked_once 设置为 false。
  • 点击:
    • 如果 !clicked_once
      • clicked_once 设置为 true。
      • 启动 xx 秒后发生的超时功能。
        • 超时时,将 clicked_once 设置为 false。
    • 如果点击一次
      • 执行事件
      • clicked_once 设置为 false。

很抱歉提供算法而不是代码,目前我面前没有任何引用资料。

关于javascript - 如何使用 yii2fullcalendar 处理长按事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41266141/

相关文章:

javascript - angularjs将相同的监听器绑定(bind)到不同的输入,如何获取输入值

javascript - 在 fadeOut 完成之前触发回调

php - 如何加速使用 Yii 2.0 框架开发的 Web 应用程序的性能

javascript - 完整日历 - 如何在完整日历的月 View 中向日期添加前导零

javascript - 将 HTML 控件从一个页面移动到另一页面

php - Yii2 - 如何从 Yii::$app->user 获取当前用户名或名称?

yii2 通过路由规则的正确部分禁用访问

wordpress - FullCalendar 的 JSON feed 加载缓慢

javascript - 全日历选择错误的结束日期

javascript - <BrowserRouter> 忽略 history Prop