我在调整Popup brwoser窗口中的图像大小时遇到问题。window.onresize只调用一次
当用户第一次调整浏览器窗口大小时,弹出窗口中的图像会被调整大小,之后当窗口调整大小时(dblclicking标题栏或使用调整大小手柄)图像维度保持与最后调整大小的维度相等。
我的代码如下所示:
<html>
<head>
<title>Enlarged Image</title>
<script language="javascript" type="text/javascript">
var arrTemp=self.location.href.split("?");
var picUrl = (arrTemp.length>0)?arrTemp[1]:"";
var NS = (navigator.appName == "Netscape") ? true : false;
function GetWidth() {
var x = 0;
if (self.innerHeight) {
x = self.innerWidth;
}
else if (document.documentElement && document.documentElement.clientHeight) {
x = document.documentElement.clientWidth;
}
else if (document.body) {
x = document.body.clientWidth;
}
return x;
}
function GetHeight() {
var y = 0;
if (self.innerHeight) {
y = self.innerHeight;
}
else if (document.documentElement && document.documentElement.clientHeight) {
y = document.documentElement.clientHeight;
}
else if (document.body) {
y = document.body.clientHeight;
}
return y;
}
window.onresize = function() { document.write("<img src='" + picUrl + "' border=0 Name=image Width=" + GetWidth() + " Height=" + (GetWidth() * 3)/4 + "/>") }
</script>
</head>
<body style='margin: 0px; text-align:center;'>
<script language="javascript" type="text/javascript">
document.write("<img src='" + picUrl + "' border=0 Name=image Width=800 Height=600 />");
</script>
</body>
我传递imgpath从我的aspx文件这个HTML文件,如下shjown:
this.aspHyperlink.NavigateUrl = "javascript:PopupPic('." + this.aspImgCtrl.ImageUrl.Replace('~', '.') + "')";
JavaScript的PopupPic功能显示如下:
function PopupPic(sPicURL) {
window.open("PopupEventImage.htm?" + sPicURL, "", "resizable=1,HEIGHT=600,WIDTH=800");
}
每次用户调整弹出窗口大小时,都可以调整图像的大小?
感谢您的帮助,我遵循了您的建议,并且运作正常。我很高兴看到你正在谈论的例子,即ASP.NEt文件。请保持minf,我传递一个数据网格的图像从一个asp.net页面,datagrid包含所有的记录,用户点击任何一个查看其放大的图像。 – 2010-09-16 07:26:37