我正在尝试连接Cookie。
我有这个js。很难将检查表<ul>
与插入cookie结合起来。
<script>
jQuery(function($){
var arrow = $('.multi-accordion li > a').next();
if (arrow.length) {
$(arrow).parent().append('<img src="v.svg" alt="">');
}
$('.multi-accordion li > a').on('click', function (event) {
var value = $('.multi-accordion li > a').index(this);
Mage.Cookies.set('nav-item', value);
var $this = $(this), $next = $this.next();
if ($next.length) {
$next.slideToggle().parent().toggleClass('opened').siblings().children('ul').filter(':visible').slideToggle();
event.preventDefault();
}
});
});
</script>
Example 我有cms Magento的这个js函数。
Mage.Cookies.set('name', 'value'); // install cookie
Mage.Cookies.get('name'); // get cookie
Mage.Cookies.clear('name'); // remove cookie
答案 0 :(得分:1)
无需包含cookie.js。 您可以在会话存储中保存导航项索引。 访问以下链接以进行会话存储。 https://developer.mozilla.org/en/docs/Web/API/Window/sessionStorage
jQuery(function ($) {
// CHECK IF nav-item IS STORED IN SESSION STORAGE
if (sessionStorage.getItem("nav-item"))
{
$('#nav > li > a:eq(' + sessionStorage.getItem("nav-item") + ')').next().show();
}
$('#nav > li > a').click(function () {
var intNavIndex = $(this).index(this);
// SAVE NAV INDEX TO SESSION STROAGE
sessionStorage.setItem("nav-item", intNavIndex);
$('#nav li ul').slideUp();
if ($(this).next().is(":visible")) {
$(this).next().slideUp();
} else {
$(this).next().slideToggle();
}
$('#nav li a').removeClass('active');
$(this).addClass('active');
});
});
答案 1 :(得分:1)
你不需要连接cookie.js Magento已经有了一个用于处理cookie的js方法。
例如:
Mage.Cookies.set('name', 'value');
Mage.Cookies.get('name');
Mage.Cookies.clear('name');
你也可以使用this js lib(不带jQuery)