javascript - jQuery 中的宽度切换动画在 FireFox 中不起作用?

标签 javascript jquery html css firefox

<分区>

我可能做错了,还是 jQuery 动画功能在 Firefox 中真的不起作用?这适用于 IE8、Opera 和 Chrome,但不适用于 Firefox。

http://jsfiddle.net/neowot/kdLwg422/

如果我真的没有弄乱语法...有什么解决方法可以让它在 Firefox 中也能正常工作?

谢谢。

HTML

<body>
    <div id="SearchIcon">Ar!</div>
<div id="LeftPanel"></div>

</body>

CSS

body{
    background:orange;
}

#SearchIcon{
    background:yellow;
    height:20px;
    width:40px;
}
#LeftPanel{
    position:absolute;
    vertical-align:top; 
    background:green;
    width:1096px;
    height:588px;
}

JS

$('#SearchIcon').click(function() {

        event.preventDefault();
        var toggleWidth = $("#LeftPanel").width() == 365 ? "1096px" : "365px"; 
        $('#LeftPanel').animate( {'width': toggleWidth}, 300); 


});   

最佳答案

删除 event.preventDefault()

编辑:

event 在 firefox 的全局范围内不可用。通过在定义它之前调用它,您正在创建一个错误,阻止执行该方法的其余部分。只需在回调中添加一个事件变量。

$('#SearchIcon').click(function(event) {

    event.preventDefault();
    var toggleWidth = $("#LeftPanel").width() == 365 ? "1096px" : "365px"; 
    $('#LeftPanel').animate( {'width': toggleWidth}, 300); 

});   

关于javascript - jQuery 中的宽度切换动画在 FireFox 中不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30180384/

上一篇:javascript - 使用按钮单击淡入多行文本

下一篇:jquery - CSS 导航菜单在悬停时移动

相关文章:

javascript - 如何在某个包装器中隐藏上一个和下一个 sibling 的内容,而不是在 jQuery 中隐藏单击的 div?

javascript - 如何更改HTML中视频的音频源?

javascript - CoffeeScript 从带参数的字符串执行函数

javascript - 如何在此菜单中从右到左更改类别

javascript - 为什么我无法让 Math.random() 和 if/else 语句的组合起作用?

html - 如何让div居中对齐并重叠?当他们使用相同的名字时

javascript - Jquery prepend 不适用于 div 标签

javascript - 进行自动实时聊天/假聊天,我的 JavaScript 跳过第一个响应

javascript - 如何在 Bootstrap 中为 Accordion 添加加号或减号? Accordion 关闭时显示加号, Accordion 打开时显示减号

javascript - 制作用户访问弹出窗口