【问题标题】:Javascript code not properly work in FireFoxJavascript 代码在 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。它在所有浏览器中看起来都一样。

标签: javascript jquery firefox background-image


【解决方案1】:

那是什么不工作?

是应该在调整大小时执行的代码吗?通过在萤火虫中使用断点来测试它,或者只是在控制台上打印一些东西。顺便提一句。你可以把它写成这样更好看

$(window).on("resize", function() { /* your stuff here */ });

还是无法调整您要操作的两个元素的宽度?在这种情况下,您应该仔细查看您的宽度变量所持有的值,也许它是在 Firefox 中以某种方式计算出来的。

【讨论】:

  • 在 chrome 和 ie 处,宽度根据页面宽度从 0px 变为其他数字。在 Firefox 宽度不改变,我找不到错误
猜你喜欢
  • 1970-01-01
  • 2015-10-26
  • 2015-02-11
  • 1970-01-01
  • 1970-01-01
  • 2011-11-06
  • 2019-08-07
  • 2013-06-21
  • 1970-01-01
相关资源
最近更新 更多