addClass('open')在jQuery中不起作用

Kal*_*pit 1 javascript css jquery css3

我面临一些奇怪的问题。我试图在某些条件下添加“开放”类。我正在使用以下代码。

 $('.stereo-nav-pos .login-register').addClass("open"); 
Run Code Online (Sandbox Code Playgroud)

但它不起作用。我已经尝试调试,然后我才知道实际上它是在追加“ open”类,然后转到jquery.js文件,在jquery.js执行结束时,它从DOM中删除了“ open”类。

然后我试图添加名为“ openn”的类,它工作正常。所以我想弄清楚为什么jquery.js文件是从DOM中删除“打开”类的问题?

如果我尝试在控制台中运行此代码,则其工作正常。

谁能告诉我这是怎么回事?

提前致谢

jGu*_*pta 5

我不确定这是否对您有用,我前一段时间也遇到过类似的问题。我所做的是我曾经使用过的setTimeout()

因此,您可以尝试以下操作:

setTimeout(function(){
   $('.stereo-nav-pos .login-register').addClass("open"); 
},10);
Run Code Online (Sandbox Code Playgroud)

这将使该函数open在一段时间后添加该类,以免其他jQuery函数将其删除。