为了账号安全,请及时绑定邮箱和手机立即绑定

jQuery animate(),鼠标移入执行动画---div有两个子级,鼠标移入div,动画为什么执行多次?求指导

jQuery animate(),鼠标移入执行动画---div有两个子级,鼠标移入div,动画为什么执行多次?求指导

DIY丶Missing 2017-09-26 15:34:12
<ul>     <li class="one"><a href="">文字一</a></li>     <li class="two"><a href="">文字二</a></li> </ul>*{     list-style: none;     margin: 0;     padding: 0;     text-decoration: none;     color: #333333; } ul{     width: 200px;     height: 20px;     background-color: #e0e0e0;     margin-top: 100px; } .one{     font-size: 20px;     text-align: center;     line-height: 20px;     float: left; } .two{     font-size: 20px;     text-align: center;     line-height: 20px;     float: left;     margin-left: 40px; }<script src="../js/jquery-1.11.0.min.js"></script> $(document).ready(function () {         $("ul").mouseover(function () {             $(this).animate({marginLeft:"15px"});         });         $("ul").mouseout(function () {             $(this).animate({marginLeft:"0"});         });     }); </script>怎让让鼠标移入ul,执行一次动画,直到鼠标移出ul后,执行过的动画回到原来位置?求指导!
查看完整描述

2 回答

已采纳
?
小羊杨

TA贡献24条经验 获得超44个赞

mouseover进入子元素会冒泡到父元素,然后就会重复触发。

使用mouseenter代替、

查看完整回答
1 反对 回复 2017-09-26
?
慕瓜2309318

TA贡献5条经验 获得超1个赞

$("ul").mouseover(function () {
       $(this).animate({marginLeft:"15px"}).animate({marginLeft:"-15px"});//此处修改
 });
 去掉
 $("ul").mouseout(function () {
            $(this).animate({marginLeft:"0"});
        });


查看完整回答
反对 回复 2017-09-26
  • 2 回答
  • 0 关注
  • 2700 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信