<div id="banner"> <ul> <li class="item1"></li> </ul> </div> <script type="text/javascript"> var banner_ul_li=$("#banner ul li"); var banner_ul_li_p=$("#banner_ul_li_p") banner_ul_li.mouseover(function () { $(this).append("<p title='a1'>123456</p>") }) banner_ul_li.mouseout(function(){ banner_ul_li_p.remove() }) </script>
1 回答
已采纳
stone310
TA贡献361条经验 获得超191个赞
因为这是个动态删除事件,因此不能一开始用变量将它保存,具体修改如下:
<script type="text/javascript"> var banner_ul_li=$("#banner ul li"); var banner_ul_li_p=$("#banner_ul_li_p") //这里因为是动态删除,不能一开始用变量将它保存,否则变量的值就是页面加载完成后初始值,不会变化,而且这里应该是没有下划线$("#banner ul li p") banner_ul_li.mouseover(function () { //这里用mouseenter,不会有冒泡事件 $(this).append("<p title='a1'>123456</p>") }) banner_ul_li.mouseout(function(){ //用mouseleave //banner_ul_li_p.remove() 此处不能用自定义变量,而是要重新获取 $("#banner ul li p").remove() }) </script>
- 1 回答
- 0 关注
- 2086 浏览
添加回答
举报
0/150
提交
取消