假设我有一些jQuery代码,将事件处理程序附加到所有类名为.myclass
的元素。
例如:
$(function(){
$(".myclass").click( function() {
// do something
});
});
我的HTML可能如下所示:
<a class="myclass" href="#">test1</a>
<a class="myclass" href="#">test2</a>
<a class="myclass" href="#">test3</a>
那个方法可以完美运行。
但是,请考虑如果.myclass
元素在将来的某个时刻写入页面。
例如:
<a id="anchor1" href="#">create link dynamically</a>
<script type="text/javascript">
$(function(){
$("#anchor1").click( function() {
$("#anchor1").append('<a class="myclass" href="#">test4</a>');
});
});
</script>
在这种情况下,当用户单击时,将创建test4
链接。尽管
test4
带有class="myclass"
类,但它没有关联click()
处理程序。基本上,我想编写一次
click()
处理程序,并使其适用于页面加载时存在的内容以及通过AJAX / DHTML后来带入的内容。 有什么办法可以解决这个问题?