如何与YII2Fullcalendar一起处理长期新闻事件



我在我的网站上使用yii2fullcalendar。

在移动设备上,尽管我们只想向下滚动屏幕。

如何将" DayClick"更改为一天的双击事件?

更新:实际上,我想避免在移动设备上使用不便。因此,最好如果我们可以设置一个"长按"参数,而不是找到将" DayClick"更改为Day双击事件的方式。

这是我的视图

<?= yii2fullcalendaryii2fullcalendar::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(......)
    ));
    ?>

谢谢。

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

  • 将变量clicked_once设置为false。
  • 单击:
    • 如果!clicked_once
      • clicked_once设置为true。
      • 启动XX秒后发生的超时函数。
        • 超时,将clicked_once设置为false。
    • 如果clicked_once
      • 执行事件
      • clicked_once设置为false。

很抱歉提供算法而不是代码,在我面前没有任何参考材料。

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

设置为:

的参数
longPressDelay

在客户端选项中,如下

<?= yii2fullcalendaryii2fullcalendar::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

最新更新