如何更改javascript变量?
我试图根据变量的当前值更改变量:如何更改javascript变量?,javascript,jquery,variables,Javascript,Jquery,Variables,我试图根据变量的当前值更改变量: window.addEventListener("popstate", function(e) { if (direction === leftnav){ direction = rightnav } else{ direction = leftnav }; loadPage(location.pathname); }); 这似乎不起作用:s 有人能帮我吗? 提前感谢:) 编辑:
window.addEventListener("popstate", function(e) {
if (direction === leftnav){
direction = rightnav
}
else{
direction = leftnav
};
loadPage(location.pathname);
});
这似乎不起作用:s
有人能帮我吗?
提前感谢:)
编辑:以下是完整的js文件:
编辑2:似乎发生的是loadPage功能似乎没有启动
if (direction == leftnav){
^只需要2个“=”符号
其余部分应该是正确的。我相信你所缺少的只是分号
if (direction == leftnav) {
direction = rightnav;
} else {
direction = leftnav;
}
另外,不必要的==尝试使用
==
而不是===
:
if (direction == leftnav) {
direction = rightnav;
} else {
direction = leftnav;
}
此外,一定要包括适当的代码>在if
和else
子句中。您还可以提供更多信息以获得更好的帮助。信息如:什么是leftnav
和righnav
变量。如果它们不是变量而是文字,则应将它们括在“
中。如“rightnav”
和“leftnav”
中
if (direction == 'leftnav')
{direction = 'rightnav';}
else
{direction = 'leftnav';}
关于leftnav和rightnav变量,您没有说过什么,所以我怀疑您可能希望使用字符串('leftnav'和'rightnav'),否则两者都可能是未定义的
编辑:既然你已经发布了代码,简单地看一下就可以知道,你想要的是带引号的字符串
window.addEventListener("popstate", function(e) {
direction = (direction=="leftnav")?"rightnav":"leftnav";
loadPage(location.pathname);
});
“什么”不起作用"? 方向
、左导航
和右导航
的值是多少?您的示例太模糊,无法回答…基本上,我根据方向的值添加了不同的css。现在我想截取一个popstate事件,但要反转方向,所以要在前面更改变量集。方向
、左导航
、和右导航
?@Šime方向是父元素的类。如果该类是leftnav,则将其设置为leftnav;如果不是,则将其设置为另一个类,实际上是last代码>非常好,它应该在那里。它用于窗口。addEventListener
。此外,在Javascript中,可以有多个代码>没有任何问题(以及缺少的问题;这些是自动添加的)。@Olli:同意。但问题被编辑了。我写答案时没有这些信息。:-)我想他指的是“如果”之后的那一个,不是最后一个。@pablo我两个都试了,都没用:(.我现在已经在主要帖子中包含了完整的文件哦,是的。不过,鲜为人知的事实是,换行符就足够了,您不必使用;,您可以添加额外的;,没有问题。SnippetSpace,我找不到定义。我仍然找不到。direction=$(this.attr('class'));在任何情况下,这都发生在popstate之前。我说的是leftnav和rightnav,而不是方向。现在你说的是loadPage()似乎没有触发,这是完全不同的问题,我猜您的事件侦听器根本没有触发。尝试将调试内容放入其中?当我删除if-else语句时,事件确实会加载。我现在明白您的意思了,leftnav和rightnav是变量值,所以我想应该在其周围添加引号。