如何让弹出窗口自适应图片的大小
我们知道,DHTML里有个Image()对象,只要设置图片源src后就可以用obj.width和obj.height获取图片的宽和高,这两个数据有了之后就可以给window.open()里控制窗口大小的参数一个定值了,不过要注意,要把窗口边框、标题栏高度和图片距边界的距离计算在内。
代码如下:
<script>
var oImg
function fiximgwin(url,w,h){
if(arguments.length==1){ //如果图像大小未定义
oImg=new Image() //创建图像对象
oImg.src=url //设置图像源
Size(url) //调用Size函数获取图像尺寸
}
//如果已取得图像尺寸,打开固定大小的窗口
else window.open(url,"","width="+w+",height="+h)
}
function Size(url){
if(oImg.width&&oImg.height) //如果已取得图像尺寸
//将图像尺寸加上一定尺寸后返回给fiximgwin()函数,
fiximgwin(url,oImg.width+18,oImg.height+25)
else setTimeout("Size(url)",10)
}
</script>
<button onClick="fiximgwin(’http://www.flash8.net/upload/2003/9/2/2003922303578757.jpg’)">打开图片</button>