Zurb的基金会"Joyride":如何启动/以编程方式



>我正在使用Foundation 4 Joyride插件,但是一旦用户单击UI上的某个按钮,我需要它启动(并重新启动),但我无法这样做。通过遵循 Zurb 网站上提供的代码,我只能在网站首次运行时运行它。

Joyride 的文档在这里:

http://foundation.zurb.com/docs/components/joyride.html

我的初始化代码在这里

  $(document).foundation().foundation('joyride', 'start', {template : { // HTML segments for tip layout
    link    : '<a href="#close" class="joyride-close-tip " style="background: url(../img/bp_sprite.png) no-repeat 0px -940px; margin-top: -4px; ">&nbsp;&nbsp;</a>',
    timer   : '<div class="joyride-timer-indicator-wrap"><span class="joyride-timer-indicator"></span></div>',
    tip     : '<div class="joyride-tip-guide" style="background: white; color: black; margin-top: -27px; margin-left: 2px; border-top: 1px dashed #c1c1c1; width: 100%; max-width: 457px;"></div>',
    wrapper : '<div class="joyride-content-wrapper" style="background-color: white; color: black; padding: 4px;  "></div>',
    button  : '<a href="#" class="small button joyride-next-tip" style="display: none;"></a>'
  }});

我也遇到了这个问题。您需要做的是用 ID 将标签包装在 a 中,然后针对该 ID 调用 joyride start 命令。

例如,标记可能如下所示:

<div id="joyrideDiv">
<ol class="joyride-list" data-joyride>
  <li data-id="joyridedElement"><p>Here's the explanation</p></li>
</ol>
</div>

然后,您可以通过仅针对该div调用foundation(这是关键)来开始该欢乐之旅。调用将如下所示:

$("#joyrideDiv").foundation('joyride', 'start');

请注意,您传递的是包装器div 的 ID,而不是元素的 ID。我不得不在源头上四处寻找才能弄清楚。

如果将 autostart 属性设置为 true,也可以启动 joyride。 为了确保清除所有以前的欢乐之旅,如果您在几个游览之间切换,您可以通过调用 destroy 函数来清除以前的旅行。

jQuery(window).joyride("destroy");
jQuery("#ot-introduction").joyride({autoStart: true});

相关内容

  • 没有找到相关文章

最新更新