代码之家  ›  专栏  ›  技术社区  ›  alex

Safari使用jquery返回的宽度不正确

  •  0
  • alex  · 技术社区  · 16 年前

    这是我jquery中有问题的部分

    var tickerWidth = 0;
    var padding = 10;
    firstList.find('li').each(function() {
    
                $(this).append(' —');
                tickerWidth += $(this).width() + padding;  
    
               $('body').prepend($(this).width() + '<br />');
    
            });
    

    firstList 是一个保存 ul 元素。当我在Firefox中运行这个程序时,我会正确地计算出宽度并将其打印到我的页面上。然而,在狩猎中,我得到的宽度要窄得多——大约是 &mdash; 未插入…这是某种比赛条件吗?

    有什么办法可以解决这个问题吗?也许首先循环并插入HTML实体,然后再次循环以计算宽度?

    谢谢

    编辑

    我先循环,插入HTML实体,然后再执行另一个循环,但值仍然不正确…

    我也试过了 outerWidth() 但这没有帮助。

    1 回复  |  直到 16 年前
        1
  •  1
  •   alex    16 年前

    好吧,我有办法计算正确,虽然有点难看。

    而不是 append() 在实体中,我是这样插入的

            $(this).html($(this).html() + ' &mdash;');
    

    这个很好用。