当我获取 $(".
userNames")
页面元素后去制作显示隐藏的时候,发现隐藏不了元素,怎么都获取不到。
我这里#top内的所有元素都是动态渲染的;
因为页面已经将JS加载完毕,此时新增请求动态添加节点,自然获取不到。
在网上查阅资料后发现动态添加的标签要事件委托才能获取到节点,也就是说要用:
$(selector).on(events,[selector],[data],fn)
注意:
1..
userNames 为动态添加节点的父级节点,请使用非动态添加的父级节点,不然同样获取不到。
在<div id = "top"></div>
中动态添加点击节点:
$('#top').on('mouseenter', '.hii',function() {
$(".userNames").show()
})
$('#top').on('mouseleave ', '.userNames',function () {
$('.userNames').hide()
})
请不要写为:
$(div).on('click', '.c', function () {
alert(123);
});
或者
$('.c').on('click', function () {
alert(123);
});
版权说明 : 本文为转载文章, 版权归原作者所有 版权申明
原文链接 : https://blog.csdn.net/weixin_52691965/article/details/125184934
内容来源于网络,如有侵权,请联系作者删除!