function resizeHeight(id,size){
var ele = document.getElementById(id)
var width = ele.offsetWidth
ele.style.height = size*width+"px"
}
说明:id是div的id(String),size是高宽比(Number)。
调用:
resizeHeight("youId",0.5)
window.onresize = resizeHeight("youId",0.5)
javascript screen对象获取屏幕宽高如alert(screen.height)availHeight 属性 -- 窗口可以使用的屏幕高度,单位像素
availWidth 属性 -- 窗口可以使用的屏幕宽度,单位像素
colorDepth 属性 -- 用户浏览器表示的颜色位数,通常为32位(每像素的位数)
pixelDepth 属性 -- 用户浏览器表示的颜色位数,通常为32位(每像素的位数)(IE不支持)
height 属性 -- 屏幕的高度,单位像素
width 属性 -- 屏幕的宽度,单位像素
div设置定位,宽度高度设为屏幕一般半即可,至于居中的话可以绝对定位。
首先设置两个div,假设给出id分别为a和b,b始终为a的宽度的二分之一。js代码为:
var diva=document.getElementById("a")
var divb=document.getElementById("b")
var wid=diva.offsetWidth
function jt(){//定义监听a大小变化的函数
var wid1=diva.offsetWidth//获取宽度
if(wid1!=wid){
wid=wid1
resizeb()
}
setTimeout("jt",100)
}
function resizeb(){
divb.style.width=wid*0.5//改变b的大小
}
jt()
但是这样写是在不知道a的大小为什么变化的情况下,这样写很耗cpu,如果很明确a的大小变化原因,直接给a绑定事件就可以了