使用jquery获取窗口高度
Getting window height with jquery
基本上,我想要一个名为#content的div,如果浏览器的高度小于440px,它的css top值为200px。然而,这似乎不起作用。我做错了什么?
var boh = $(window).height();
var bohi = parseInt(boh);
if(bohi < 440) {
$("#content").css("top","200px");
} else {
//this part works, so it's hidden
}
我认为你需要处理$(window).resize()事件,否则逻辑只会运行一次。
<script type="text/javascript">
$(window).resize(function(){
var bohi = $(window).height();
if(bohi < 440) {
$("#content").css("top","200px");
} else {
//this part works, so it's hidden
}
});
</script>
这是一个似乎正在工作的jsfiddle:
- http://jsfiddle.net/kNbuy/
注意$(window).height()
不需要parseInt()
,它已经作为一个数字处理了。
您需要将此代码放入文档就绪处理程序中,如下所示:
<script>
$(document).ready(function(){
var boh = $(window).height();
var bohi = parseInt(boh);
if(bohi < 440) {
$("#content").css("top","200px");
} else {
//this part works, so it's hidden
}
});
</script>
OK。我想我知道你的问题在哪里了。
您没有指定#content元素的'position'属性是什么。如果你没有得到你想要的行为,我建议你尝试添加position:absolute
的样式#content。
我建议你仔细研究'position'属性是如何工作的。您可能会对更改#content 和父元素的位置css属性得到的结果感到惊讶。
另外,您可能需要考虑让页面在用户调整浏览器窗口大小时自动执行一些代码来调整自己。这可以通过$.resize()来处理。
从2015年开始,我建议使用CSS媒体查询来代替JavaScript。
@media (max-height: 440px) {
#content {
top: 200px;
}
}
相关文章:
- 使用JavaScript根据窗口/视口的高度动态调整图像大小
- 调整缩放窗口高度提升缩放
- javascript skrollr基于动态内容更新窗口高度
- 可以't参见画布中的窗口宽度/高度
- 使用jQuery可以根据窗口大小更改滑块的css高度
- 当移动地址栏出现/消失时,防止更改窗口高度
- 我需要帮助弄清楚一旦窗口的垂直高度被滚动,如何切换一个元素
- 使用JavaScript更改带有窗口高度的元素样式
- 在 ReactJS 中获取视口/窗口高度
- 如何将宽度和高度变量设置为浏览器窗口的宽度和高度
- 如何使文本框的高度与窗口的高度相同
- 如何在angular js中获取窗口高度
- 动画渐变(javascript)背景不会延伸到窗口的整个高度
- 黑莓网站:窗口大小(窗口高度)在黑莓模拟器中返回不正确的值
- 将“窗口高度”指定为“文档高度”
- 获取占x滚动条高度的窗口内部高度
- 使用jQuery如何获取窗口高度
- 固定位置高度比浏览器窗口大百分比
- 更改宽度,使高度适合窗口屏幕
- jquery,列的高度相等,并且至少与浏览器窗口一样高