jQuery中的append方法误区!

DevilPace 2013-07-09

http://jerryqiu.iteye.com/blog/923943

先上测试代码,我想做这样一个效果,鼠标移入自动在div上添加删除字样,鼠标移出后消失

<div id="1">Item1</div>  
<div id="2">Item2</div>  
<div id="3">Item3</div>
<script type="text/javascript">  
jQuery(function() {  
    var ele = jQuery("div");  
    ele.hover(function(){  
        jQuery(this).append("<span class='s'>删除</span>");  
    },function(){  
        jQuery(this).remove(".s");  
    });  
});  
</script>

这样的写法并不能达到效果,主要是jQuery(this).remove(".s");执行后没有效果,查看了光放的API,这样写到:

append(content)

这个操作与对指定的元素执行appendChild方法,将它们添加到文档中的情况类似。

参数contentString,Element,jQuery

并没有太大收获,想了想可能是没有将新的代码加入dom中,于是把append中的参数由String换成jQuery对象,操作如下:

1.在HTML中添加<spanclass='s'>删除</span>

2.将jQuery(this).append("<span class='s'>删除</span>");改成
jQuery(this).append(jQuery(".s"));

3.测试成功!

相关推荐