繁体   English   中英

Javascript-window.open()弹出大小问题

[英]Javascript - window.open() popup size issue

我正在尝试在新创建的弹出窗口中显示预加载的图像。 这是代码:

HTML

<div id="hiddenImages" style="display: none;"></div>

<a href="BigImage1.png" onclick="OpenImage(this,event);" target="_blank"> <img src="SmallImage1.gif" width="196" height="130" border="0"></a>

<a href="BigImage2.png" onclick="OpenImage(this,event);" target="_blank"> <img src="SmallImage2.gif" width="196" height="130" border="0"></a>

JS

<script type="text/javascript">
preloadImages('BigImage1.png','BigImage2.png');
</script>

// PreLoadImages:

function preloadImages() {
     var hiddenDiv = document.getElementById('hiddenImages');
     var i;
     var img;

     for(i = 0; i < arguments.length; i++) {
          img = document.createElement('img');
          img.src = arguments[i];
          img.id = arguments[i];    
          img.alt = '';
          hiddenDiv.appendChild(img);
     }
}

// OpenImage:

function OpenImage(element,e)
{
  e.preventDefault();
  var big_image = element.getAttribute("href"); 
  var img = document.getElementById(big_image);

  var top = (screen.height/2)-(img.height/2);
  var left = (screen.width/2)-(img.width/2);


 var str = "\"" + "width=" + img.width +  ",height=" + img.height +  ",top=" + top +  ",left=" + left +  ",status=0, scrollbars=0, resizable=0" + "\"";
 alert(str);

 var myWindow = window.open(img.src , "win1", str); 


}

当我在OpenImage()函数中输出'str'变量时,此代码给出了大图像的完美尺寸。 但是,弹出窗口的大小总是与图像的大小不同。 IE会水平拉伸弹出窗口,而Google Chrome会垂直拉伸弹出窗口。 尽管两个浏览器都显示了完全相同的图像尺寸。 并且实际上将这些图像的尺寸设置为弹出窗口的尺寸。

问候。

试试看,也尝试重命名变量top ,我认为javascript将其作为关键字阅读。

var str = "width=" + img.width +  ",height=" + img.height +  ",top=" + tops +  ",left=" + left +  ",status=0, scrollbars=0, resizable=0 ";

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM