我需要你的代码帮助我从jquery插入新的div时遇到问题 插入的div不适用于我的jquery代码,如果有人有解决方案请告诉我 这是我的Html代码
<input type="text" id="t" value=""/>
<a href="#" class="btn">click</a><br/>
<br/>
<div class="profileInfoSectionwall"style="border:1px solid #ccc">
text111111
<div class="remove" style="display: none;">
<a class="post_remove" rel="1" herf="#">X</a>
</div>
</div>
<br/>
<div class="profileInfoSectionwall"style="border:1px solid #ccc">
text222222
<div class="remove" style="display: none;">
<a class="post_remove" rel="2" herf="#">X</a>
</div>
</div>
和这个jquery代码
$(document).ready(function(){
$(".profileInfoSectionwall").mouseenter(function(){
$(this).children(".remove").show();
});
$(".profileInfoSectionwall").mouseleave(function(){
$(".remove").hide();
});
$(".btn").click(function(){
var s=$("#t").attr("value");
$(this).after("<br/><br/><div class='profileInfoSectionwall' style='border:1px solid #ccc'>"+s+"<div class='remove' style='display: none;'><a class='post_remove' rel='3' herf='#'>X</a></div></div>");
return false;
})
})
提前致谢
答案 0 :(得分:6)
您可能想尝试使用.on方法,例如:
$(".profileInfoSectionwall").on('mouseenter', function(){
$(this).children(".remove").show();
});
$(".profileInfoSectionwall").on('mouseleave', function(){
$(".remove").hide();
});
答案 1 :(得分:3)
我创建了小提琴http://jsfiddle.net/mXBkV/1/
$(document).on('mouseenter', 'div.profileInfoSectionwall', function(){
$(this).children(".remove").show();
});
$(document).on('mouseleave', 'div.profileInfoSectionwall', function(){
$(".remove").hide();
});
答案 2 :(得分:1)
实际上,您需要的是live()方法,因为您希望处理当前现有OR未来DOM元素的事件(即:由JQuery创建)。
所以这是一个适合您的工作代码:
http://jsfiddle.net/sidou/CMab3/
如果您想要改进一下,请告诉我
答案 3 :(得分:0)
尝试.live
函数live in jquery
$(".profileInfoSectionwall").live('mouseenter', function(){
$(this).children(".remove").show();
});
$(".profileInfoSectionwall").live('mouseleave', function(){
$(this).children(".remove").hide();
});