当 cookie_monster 为真时,Zurb Foundation 5 Joyride 重新启动

Posted

技术标签:

【中文标题】当 cookie_monster 为真时,Zurb Foundation 5 Joyride 重新启动【英文标题】:Zurb Foundation 5 Joyride Restart when cookie_monster true 【发布时间】:2015-05-16 18:07:56 【问题描述】:

我的 Joyride 效果很好。它在页面加载后开始。当单击停止按钮或完成游览时,它会停止。我的重新启动链接重新启动了兜风之旅。只有……

添加 Joyride 设置,cookie_monster: true 可防止每次访问时重新开始游览。好的!不幸的是,它还阻止了重新启动链接的工作。这种行为是有道理的。 start 函数不知道它是在页面加载时调用还是从链接调用。该链接必须使用其他方法,或设置某些内容以绕过 cookie 检查。

您知道让用户在被cookie_monster show-only-first-time 设备隐藏后启动 Joyride 的魔法吗?

正文标记:

<a href='#', data-joyride-restart>tips</a>

<p id='first-stop'>First stop content</p>
<p id='second-stop'>Second stop content</p>

<ol class='joyride-list' data-joyride data-joyride-name='my_name',
  data-joyride-autostart='true'>
  <li data-id='first-stop', data-text='Next'>
    <p>First stop tip</p>
  </li>
  <li data-id='second-stop', data-text='Next'>
    <p>Second stop tip</p>
  </li>
  <li data-text='End'>
    <p>Last stop modal tip</p>
  </li>
</ol>

javascript

;$(function() 
  var tour_root = $('ol[data-joyride]')
  if (tour_root !== undefined)
    var attr = tour_root.attr('data-joyride-name');
    var cookie_name;
    if (attr !== undefined)
      cookie_name = attr;
     else 
      cookie_name = 'joyride';
    
    $(document).foundation(
      joyride : 
        'cookie_monster': true,
        'cookie_domain': 'domain.com',
        'cookie_name': cookie_name
      
    );
    attr = tour_root.attr('data-joyride-autostart');
    if (attr !== undefined && attr.match(/true/i)) 
      $(document).foundation().foundation('joyride', 'start');
    
  
  $('a[data-joyride-restart]').on('click', function (e)
    e.preventDefault();
    $(document).foundation().foundation('joyride', 'start');
  );
);

【问题讨论】:

【参考方案1】:

写下这个问题帮助我找到了诀窍。 (我会留下它,因为我没有找到任何关于这种行为的好例子。)

  $('a[data-joyride-restart]').on('click', function (e)
    e.preventDefault();
    $(document).foundation(
      joyride : 
        'cookie_monster': false
      
    ).foundation().foundation('joyride', 'start');
  );

代码在要求 Joyride 启动之前重置 cookie-monster 设置。

如果有更好的方法,请分享爱!

【讨论】:

以上是关于当 cookie_monster 为真时,Zurb Foundation 5 Joyride 重新启动的主要内容,如果未能解决你的问题,请参考以下文章

当水平为真时,百分比不适用于 FlatList 渲染项

Pine 脚本 - 当多个条件为真时输入位置

android:当缩小为真时未发送邮件

当其他可观察对象为真时,从可观察对象中获取项目

当布尔值为真时触发动画

Swift 3 - 当布尔为真时如何移动精灵节点?