$(window).width()vs $(document).width()之间的区别

kbv*_*hnu 51 javascript jquery dimensions jquery-selectors

在jQuery中$(window).width()vs 之间的主要区别是什么$(document).width()?是否窗口表示浏览器,文档表示html页面的主体?我对么 ?

kap*_*apa 60

来自以下文件width():

此方法还能够找到窗口和文档的宽度.

$(window).width();   // returns width of browser viewport
$(document).width(); // returns width of HTML document
Run Code Online (Sandbox Code Playgroud)

简单的jsFiddle演示

在演示中,我设置了html { width: 1000px; },它比视口大.

HTML页面正文的宽度是第三个值.$('body').width()也可以与其他两个不同(body { margin: 100px; }例如尝试).


Hen*_*fel 21

你是对的.这window是浏览器的可视区域.这document是页面的实际主体.所以你的document远远超出了window


Ric*_*ing 8

好吧,这window是第一件加载到浏览器中的东西.这个window对象有广大的性质类似length, innerWidth,innerHeight,name,如果它已关闭,其父母,等等.

那么文档对象呢?

document对象是您的html文档,将加载到浏览器中.在document实际上被载入内部window对象,并具有类似名称,网址,饼干等,提供给它的属性是什么究竟意味着什么?这意味着如果你要访问的一个特性windowwindow.property,如果document它是 window.document.property这也是短可用 document.property.

因此总之,文档可能比窗口小.

来自:http://eligeske.com/jquery/what-is-the-difference-between-document-and-window-objects-2/

  • @Rick你应该引用引用,这既有用又有道德:http://eligeske.com/jquery/what-is-the-difference-between-document-and-window-objects-2/ (2认同)

Mou*_*hna 5

$(window).width(); 返回浏览器视口的宽度

$(document).width(); 返回HTML文档的宽度

$(document).width()有点不可靠,导致全屏浏览器的值较低。$(window).width()更安全。

$(window).width() 获取窗口的整个宽度,包括滚动条之类的内容。