繁体   English   中英

在动态添加的div上应用jquery效果

[英]apply jquery effect on dynamically added div

function myfunction(id){
//code 

$("#mydiv").hide();
};

但是'mydiv'是动态添加的,该功能不起作用。

确保您正在调用$("#mydiv").hide(); 添加#mydiv 只要您已经添加#mydiv ,代码本身就可以正常工作。

由于您共享的代码部分似乎还不错,我怀疑您的代码还有其他问题。

尝试调试它。 这并不难,让您自己找出错误要比真正认真地查看代码快得多。

首先,如果可以确定您是否到达该行代码,那将是一个很好的了解。 您可以打开开发人员控制台并将断点添加到有问题的行,或者可以在代码中添加alert("this line is reached and executed") ,然后您将知道是否已到达并执行该行。

如果您到达有问题的路线,最好了解那里发生的事情:

例如,最好知道$("#mydiv")匹配任何东西。 如果您害怕开发者控制台,可以随时尝试: alert($("#mydiv").length) 如果为0,则没有匹配项;如果为1 ,则已匹配一个元素,如果您调用$("#mydiv").hide() ,该元素将被隐藏。 如果为0 ,则说明您无法匹配元素。 这意味着您的DOM当前没有id为mydiv元素 无论是应该动态添加还是从一开始就添加都没有关系,不存在。 您可能在ID中输入了拼写错误。

由于您要匹配通过其ID动态添加的内容,因此可能已经有一个ID为mydiv的元素。 如果有更多具有相同ID的元素,则只会匹配第一个! 具有相同ID的多个元素不仅是错误的做法,而且是无效的,并且以后可能会导致更多的错误和麻烦。

如果您确定匹配了正确的元素,并且在调用$("#mydiv").hide()时未将其隐藏,则总可以使用该方法来查找问题:例如,如果您打开javascript开发者控制台, javascript错误将在此处列出。 确保检查它们是否与此问题有关。

快乐寻找虫子!

暂无
暂无

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

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