var mh=document.getElementById("main").offsetHeight
setInterval(function(){
var mh1=document.getElementById("main").offsetHeight
if(mh1!=mh){
console.log("main的height变化了!")
mh=mh1
}
},100)
}
利用scroll 事件来监听。
当用户滚动指定的元素时,会发生 scroll 事件。
scroll 事件适用于所有可滚动的元素和 window 对象(浏览器窗口)。
scroll() 方法触发 scroll 事件,或规定当发生 scroll 事件时运行的函数。
大概写一下:方法一:用触发手机的横屏和竖屏之间的切换的事件
代码如下:
window.addEventListener("orientationchange", function() {
// 宣布新方向的数值
alert(window.orientation)
}, false)
方法二:监听调整大小的改变
代码如下:
window.addEventListener("resize", function() {
// 得到屏幕尺寸 (内部/外部宽度,内部/外部高度)
}, false)
css判断横竖屏幕
代码如下:
@media screen and (orientation:portrait) {
/* portrait-specific styles */
}
/* landscape */
@media screen and (orientation:landscape) {
/* landscape-specific styles */
}
本地window.matchMedia方法允许实时媒体查询。我们可以利用以上媒体查询找到我们是处于直立或水平视角:
代码如下:
var mql = window.matchMedia("(orientation: portrait)")
// 如果有匹配,则我们处于垂直视角
if(mql.matches) {
// 直立方向
alert("1")
} else {
//水平方向
alert("2")
}
// 添加一个媒体查询改变监听者
mql.addListener(function(m) {
if(m.matches) {
// 改变到直立方向
document.getElementById("test").innerHTML="改变到直立方向"
}
else {
document.getElementById("test").innerHTML="改变到水平方向"
// 改变到水平方向
}
})