Javascript 代码在 FireFox 中无法正常工作
Posted
技术标签:
【中文标题】Javascript 代码在 FireFox 中无法正常工作【英文标题】:Javascript code not properly work in FireFox 【发布时间】:2012-09-10 17:02:12 【问题描述】:<body>
<a href="link" id="left-link" style="position: fixed; width:0px; height: 100%; "></a>`
<a href="link" id="right-link" style="position: fixed; width: 0px; right: 0px; height: 100%; "></a>
<div id="page-wrap"> .... </div>
<script>
(function ($)
jQuery(window).resize(function ()
var width = jQuery('#page-wrap').css('margin-left');
jQuery('#left-link').css( width: width );
jQuery('#right-link').css( width: width );
);
var width = jQuery('#page-wrap').css('margin-left');
jQuery('#left-link').css( width: width );
jQuery('#right-link').css( width: width );
)(jQuery);
</script>
</body>
我创建了这个脚本,但不在 Firefox 中播放,我找不到错误。 Chrome 和 IE 播放正确。
【问题讨论】:
注意:(function($) ... )(jQuery)
的意义在于您可以在...
中使用$
代替jQuery
什么是不工作的?当您进行初始分配时,可能是 DOM 还没有准备好?你在width
中得到了什么价值?
在 chrome 和 ie 处,宽度根据页面宽度从 0px 变为其他数字。在 Firefox 中宽度不要改变!
您知道在您的代码中使用margin-left
?我不明白为什么 margin-left 会改变?
我在 Chrome、Firefox 和 IE 中都尝试了小提琴 sra 所做的。我还将它本地放在我的计算机上,以排除小提琴上的 iframe。 margin-left
始终为 0px。它在所有浏览器中看起来都一样。
【参考方案1】:
那是什么不工作?
是应该在调整大小时执行的代码吗?通过在萤火虫中使用断点来测试它,或者只是在控制台上打印一些东西。顺便提一句。你可以把它写成这样更好看
$(window).on("resize", function() /* your stuff here */ );
还是无法调整您要操作的两个元素的宽度?在这种情况下,您应该仔细查看您的宽度变量所持有的值,也许它是在 Firefox 中以某种方式计算出来的。
【讨论】:
在 chrome 和 ie 处,宽度根据页面宽度从 0px 变为其他数字。在 Firefox 宽度不改变,我找不到错误以上是关于Javascript 代码在 FireFox 中无法正常工作的主要内容,如果未能解决你的问题,请参考以下文章
JavaScript 警报在 Firefox 6 中不起作用
如何在 Firefox / Firebug 中美化 JavaScript 和 CSS?
以下 JavaScript 似乎在 Firefox 中有效,但在 Chrome 中无效?