与 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