我需要在点击特定菜单链接时注册cookie(我使用此cookie将移动用户从站点的移动版本重定向到桌面版本)。
在非WP站点中,我只使用onclick
属性来实现此目的,如下例所示:
<script>
function setupCookie() {
document.cookie = "desktop=true;domain=.mysite.com";
}
</script>
<a href="mysite.com" onclick="setupCookie();"> Desktop version </a>
但由于菜单的处理方式,我在Wordpress中无法做到这一点,HTML结构就是这样(我使用自定义CSS WP菜单字段添加了类desktop-redirect
)。
<li class="desktop-redirect menu-item menu-item-type-custom menu-item-object-custom menu-item-1261">
<a href="mysite.com">Desktop version</a>
</li>
我尝试过这样的事情:
function setupCookie() {
document.cookie = "desktop=true;domain=.mysite.com";
}
element.addEventListener("click", setupCookie(),false);
var element = document.getElementsByClassname("desktop-redirect")[0].getElementsByTagName("a")[0];
但它不起作用(desktop-redirect
类对于li
元素是唯一的。)
提前致谢。
答案 0 :(得分:0)
试试这个:
function setupCookie() {
document.cookie = "desktop=true;domain=.mysite.com";
}
document.getElementsByClassName("desktop-redirect")[0].getElementsByTagName("a")[0].addEventListener("click", setupCookie);
请注意,您的getElementsByClassName未将&#34; N&#34;在名称...不确定这是你的代码,还是一个错字,但这是一个问题。另外,在函数调用中省略了()。