我只想要一些简单的JQ/JS来检查当前页面/窗口(不是特定的元素)是否有垂直滚动条。
Googling给我的东西对于这个基本的功能来说似乎过于复杂了。
如何做到这一点?
发布于 2010-01-27 20:52:04
$(document).ready(function() {
// Check if body height is higher than window height :)
if ($("body").height() > $(window).height()) {
alert("Vertical Scrollbar! D:");
}
// Check if body width is higher than window width :)
if ($("body").width() > $(window).width()) {
alert("Horizontal Scrollbar! D:<");
}
});
发布于 2010-01-27 20:52:51
试试这个:
var hasVScroll = document.body.scrollHeight > document.body.clientHeight;
但是,这只会告诉您垂直scrollHeight是否大于可视内容的高度。hasVScroll
变量将包含true或false。
如果您需要进行更彻底的检查,请在上面的代码中添加以下代码:
// Get the computed style of the body element
var cStyle = document.body.currentStyle||window.getComputedStyle(document.body, "");
// Check the overflow and overflowY properties for "auto" and "visible" values
hasVScroll = cStyle.overflow == "visible"
|| cStyle.overflowY == "visible"
|| (hasVScroll && cStyle.overflow == "auto")
|| (hasVScroll && cStyle.overflowY == "auto");
发布于 2010-01-27 21:33:03
我尝试了前面的答案,但似乎不起作用$("body").height()不一定代表整个html高度。
我已经更正了这个解决方案,如下:
// Check if body height is higher than window height :)
if ($(document).height() > $(window).height()) {
alert("Vertical Scrollbar! D:");
}
// Check if body width is higher than window width :)
if ($(document).width() > $(window).width()) {
alert("Horizontal Scrollbar! D:<");
}
https://stackoverflow.com/questions/2146874
复制相似问题