繁体   English   中英

如何使用yii2fullcalendar处理长按事件

[英]How to handle a long press event with yii2fullcalendar

我在网站上使用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
      • 执行活动
      • clicked_once设置为false。

很抱歉提供的是算法而不是代码,目前他们手上没有参考资料。

我有一个更好的解决方案。

将参数设置为:

longPressDelay

在下面的客户端选项中

<?= \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',

            'longPressDelay' => 1500, // -> Add here

            'firstDay' => date('w'),  // Sunday=0, Monday=1, Tuesday=2, etc.
            'header' => [
                'center'=>'prev,next today',
                'left'=>'',
                'right'=>'agendaDay,agendaWeek,month',
            ],
        ],
        'ajaxEvents' => Url::to(......)
    ));
    ?>

请参阅: https : //github.com/philippfrenzel/yii2fullcalendar/issues/72#issuecomment-268556312

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM