与 Foundation 合作真的很容易,但我不知道在这种情况下该怎么做。我通过谷歌挖掘了很多我测试了大约 6 种不同的方法如何在第一次访问我的页面时只启动一次joyride。这种方法的结果总是不同的,成倍增加的滑块(天知道为什么),空白页或什么都没有改变。

如果我理解得很好,我应该在 'foundation.joyride.js' 的这一部分设置 monster_cookie: true ,但是在那之后,joyride 甚至不会启动一次,如果 cookie_monster: false ,我可以在每次加载主/子页面时看到joyride。我尝试清理内存和其他简单的东西,但没有任何效果。您有任何有效/经过测试的解决方案吗?

我有 5.0.0 版本的 Joyride,当我粘贴 ver: 5.2.1 的代码时,joyride 停止工作了。

我使用 Foundation 作为 Wordpress 主题,所以这是我的functions.php 的一部分:

if (!is_admin()) add_action("wp_enqueue_scripts", "my_jquery_enqueue", 11);

function my_jquery_enqueue() {

    //Load jQuery 2.0

    wp_deregister_script('jquery');
    wp_register_script('jquery', "http".($_SERVER['SERVER_PORT'] == 443 ? "s" : "")."://code.jquery.com/jquery-2.1.0.min.js", false, null);
    wp_enqueue_script('jquery');

    //Load Foundation.js
    wp_enqueue_script('foundation_js', get_template_directory_uri().'/js/foundation.js', array('jquery'), false, true);
    //Load faq-crm.js
    wp_enqueue_script('faq-crm_js', get_template_directory_uri().'/js/faq-crm.js', array('jquery', 'foundation_js'), false, true);
    //modernizr.js
    wp_enqueue_script('modernizr_js', get_template_directory_uri().'/js/vendor/modernizr.js', array('jquery', 'foundation_js', 'faq-crm_js'), false, true);
    // Load slider orbit.js
    wp_enqueue_script('orbit_slider_js', get_template_directory_uri().'/js/foundation/foundation.orbit.js', array('jquery', 'foundation_js', 'faq-crm_js'), false, true);
    // Load magellan.js
    wp_enqueue_script('magellan_js', get_template_directory_uri().'/js/foundation/foundation.magellan.js', array('jquery', 'foundation_js', 'faq-crm_js'), false, true);
    //Load topbar.js
    wp_enqueue_script('topbar_js', get_template_directory_uri().'/js/foundation/foundation.topbar.js', array('jquery', 'foundation_js', 'faq-crm_js'), false, true);
    //Load modal.js
    wp_enqueue_script('modal_js', get_template_directory_uri().'/js/foundation/foundation.reveal.js', array('jquery', 'foundation_js', 'faq-crm_js'), false, true);
    //Load joyride.js
    wp_enqueue_script('joyride_js', get_template_directory_uri().'/js/foundation/foundation.joyride.js', array('jquery', 'foundation_js', 'faq-crm_js'), false, true);
    //Load cookie.js
    wp_enqueue_script('cookie_js', get_template_directory_uri().'/js/vendor/jquery.cookie.js', array('jquery', 'foundation_js', 'faq-crm_js'), false, true);
}

最佳答案

我不确定您是否使用了正确的选项。我在一个项目中使用了 Zurb 的 Joyride,只是在 Joyride 函数调用的选项中配置了 cookie 设置,如下所示:

<script>
$(window).load(function() {
    $('#contentID').joyride({
        'cookieMonster': true,    // true/false for whether cookies are used
        'cookieName': 'JoyRide',  // choose your own cookie name
    });
  });
});
</script>

设置的基础知识和可用的选项在这里:http://zurb.com/playground/jquery-joyride-feature-tour-plugin

10-08 15:49