我很好奇window.outerWidth
和$(window).outerWidth()
之间的差异,如果有的话。
我无法在Google上找到关于此的更多信息,所以我认为我会吸引群众。这只是一个普遍问题,而不是具体问题。
答案 0 :(得分:6)
返回元素的宽度,以及左右填充, 边框,以及可选的边距,以像素为单位。
如果省略includeMargin或为false,则填充和边框为 包括在计算中;如果为真,则还包括保证金。
此方法不适用于窗口和文档对象;对于 这些,请改用.width()。
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等问题。