使用replaceWith()被替换过后的元素可以重新在绑定事件吗?我尝试了一下,有的时候可以被点击,但是大部分的情况下,还是不能被点击的,为什么会这样呢?代码如下<br/>
<button>点击的时候</button>
<div>被替换的内容</div>
<p>需要变动的地方</p>
<script>
$(function(){
$("button").bind("click",function(){
$("span").click(function(){
$("p").css({"color":"blue"})
});
$("div").replaceWith("<br/><span class='nnnn'>哎呀,我竟然被替换了</span>");
});
$("div").click(function(){
$("p").css({"color":"red"})
});
})
</script>
已经解决了
$(function(){ $("button").on("click",function(){ $("span").click(function(){ $("p").css({"color":"blue"}) }); $("div").replaceWith("<br/><span class='nnnn'>哎呀,我竟然被替换了</span>"); $("span").on("click",function(){ $("p").css({"color":"red"}) }); }); })
应该是你要的效果吧,点击被span替换之后的元素之后,p标签的颜色被替换为红色。