replaceWith()被替换过后的元素可以重新在绑定事件吗?

来源:5-2 DOM替换replaceWith()和replaceAll()

沈半截

2016-04-12 20:49

使用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>


写回答 关注

2回答

  • 沈半截
    2016-04-14 16:56:21

    http://img.mukewang.com/570f5ad20001881d08040621.jpg已经解决了

    沈半截

    还有一个点。。很重要,获取动态的元素用live 高版本是这样的,on和bind没用。。。亲测

    2016-04-14 16:59:37

    共 1 条回复 >

  • 音客
    2016-04-12 22:24:06
    $(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标签的颜色被替换为红色。

    慕前端818...

    我碰到了一样的问题,用大佬的方法给解决了,为老大点赞

    2020-03-31 18:44:43

    共 3 条回复 >

jQuery基础(二)—DOM篇

jQuery第二阶段开启DOM修炼,了解创建、插入、删除与替换

114014 学习 · 590 问题

查看课程

相似问题