繁体   English   中英

jQuery元素上的加号或减号不起作用。 为什么?

[英]Plus or minus equals on jQuery element does not work. Why?

当我跑步时:

console.log($('.' + menu_id)[0].className);

我得到:

main-mobile-menu hide-left

当我跑步时:

console.log($('.' + menu_id)[0].className -= ' hide-left');

我得到:

NaN

我可以使用以下方法设置课程:

$('.' + menu_id)[0].className = 'main-mobile-menu'

但我不明白为什么-=无法正常工作。 我知道jQuery中有一个removeClass方法,但是我一直在尝试尽可能将本机javascript与jQuery元素一起使用。

+=可以用于字符串连接,但是一旦将字符串添加到数字中,整个变量就变成了字符串,因此-=不能使用,因为不可能从字符串中减去字符串。

如果您只想使用javascript,建议您使用.replace("old","new")

例:

console.log($('.' + menu_id)[0].className.replace("hide-left", ""));

因为-不这样做。 它做数字减法。 className不是数字,并且'main-mobile-menu'不是数字,结果不是数字。

在JavaScript / Jquery中, +用于表示字符串,但是-可以用于对int的关节操作,但不能用于字符串。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM