搜索

首页  >  问答  >  正文

javascript - jQuery 在firefox中点击出现闪退,怎么解决?

<p id='warpBox' class='warp'>点我</p>
<p class='warpp' style="display: none;">
    <img src ='' />
    <p class='title'>图片名称</p>
    <p class='dec'>图片描述</p>
</p>

大体上就是这么个简单的结构,通过点击warpBox,显示warpp.

$('#warpBox').on('click',function(e){
    $('.warpp').css({
        'position': 'absolute',
        'top': '50%',
        'left': '35%'
    })
})

现的问题是:点击后,隐藏的p也显示,但一闪就退。在其它浏览器测试均正常,当前使用的是最新的jQuery版本。
请问该怎么解决?是哪里出了问题?谢谢!

阿神阿神2762 天前851

全部回复(2)我来回复

  • 为情所困

    为情所困2017-06-12 09:30:47

    终于找到原因了,原来火狐在执行完点击事件后,没有阻止这个事件而造成的这个死样子:

    $('#warpBox').on('click',function(e){
        e.stopPropagation();  //OK
        $('.warpp').css({
            'position': 'absolute',
            'top': '50%',
            'left': '35%'
        })
    })

    回复
    0
  • 阿神

    阿神2017-06-12 09:30:47

    你应该把那些样式写进class里面,点击只需控制显示即可。还有,你用绝对定位,父容器就要使用相对定位哦!!

    回复
    0
  • 取消回复