window.outerWidth VS $(window).outerWidth()

时间:2012-07-17 20:18:35

标签: javascript jquery

我很好奇window.outerWidth$(window).outerWidth()之间的差异,如果有的话。

我无法在Google上找到关于此的更多信息,所以我认为我会吸引群众。这只是一个普遍问题,而不是具体问题。

4 个答案:

答案 0 :(得分:6)

Jquery's outerWidth

  

返回元素的宽度,以及左右填充,   边框,以及可选的边距,以像素为单位。

     

如果省略includeMargin或为false,则填充和边框为   包括在计算中;如果为真,则还包括保证金。

     

此方法不适用于窗口和文档对象;对于   这些,请改用.width()。

window.outerWidth

  

window.outerWidth获取浏览器窗口外部的宽度。   它表示整个浏览器窗口的宽度,包括侧边栏   (如果展开),窗口镶边和窗口调整边框/句柄大小。

答案 1 :(得分:2)

来自jQuery文档(http://api.jquery.com/outerWidth/):

  

此方法不适用于窗口和文档对象;对于这些,请改用.width()。

所以,你应该使用 $(window).width(),它会返回:

  

“浏览器视口的宽度”   (所以没有窗口边框和其他东西)

window.outerWidth 返回整个窗口宽度(带边框和其他内容)

答案 2 :(得分:0)

您可以阅读the jQuery docs

  

此方法不适用于窗口和文档对象;对于这些,请改用.width()

window.outerWidth获取浏览器窗口外部的宽度时,jQuery的.width()方法确实在window上调用时返回浏览器视口的宽度 - 选择jQuery实例。为此,它调用了一堆子函数和钩子(参见source code)与浏览器兼容(但速度要慢得多)。

答案 3 :(得分:0)

关于outerWidth的细节: jQuery's implementation可让您选择是否要在测量中包含保证金。 Javascript只是得到了数字。我不知道它是否包括保证金。

jQuery只是一堆花哨的JavaScript。事实上,你可以使用JavaScript实现jQuery自己做的任何事情(我鼓励你这样做)!我鼓励您阅读this one等问题。