2013-05-15 23 views
11

我已经开辟了与作为禁用滚动条新窗口的网页现有的链接如下:启用浏览器的滚动条=没有

<a onclick='window.open("example.html", "name", "resizable=1,scrollbars=no,width=500,height=200");' href='#'>Click to pop up without scroll bars</a> 

为了讨论的方便,我不能改变这个window.open()代码。我需要在窗口打开后启用滚动条。

这使用下面的代码在IE:

<script type="text/javascript"> 
    onload=function() 
     { 
    enableScrolling(); 
    } 
    function enableScrolling() 
    { 
     document.body.scroll = "yes"; // IE 
    } 
</script> 

然而,这并不在Firefox或Chrome浏览器。

根据这个页面,下面的代码应该适用于Firefox和Chrome,但它没有(也许这曾在早期版本?)

 document.documentElement.style.overflow='scroll'; 
     document.body.style.overflow='scroll'; 

有谁知道是否有可能使滚动条窗口打开后滚动条被禁用后的FireFox和Chrome?

+0

感谢您的留言。由于您的帖子,我解决了我的问题。 (至少对于IE) –

+0

我不认为你可以使用该代码禁用Chrome中的滚动条,所以你只需要找到Firefox的修复。 –

+0

尝试'和JavaScript不好的属性滚动。 – KingRider

回答

0

由于您为IE添加js,我假设您可以更改显示页面的工作方式。 在这种情况下,我会尝试将打开的窗口的内容放在div中,并将其样式设置为如下形式:height:200px;溢出:自动;

0

其实我试着用不同的浏览器,如果你有固定的大约高度要求,你可以做的是包裹example.html的的所有内容在一个特定的DIV与像overflow:auto;height:200px附加的CSS。我会告诉你整个代码。

<body> 
<div style="overflow:auto;height:200px;"> 
    Your HTML code  
</div> 
</body> 

放入example.html的。身高可从代码window.open("example.html", "name", "resizable=1,scrollbars=no,width=500,height=200");获得。

这不是实际的解决方案,但它会解决您在每个浏览器中的问题。

希望得到这个帮助。

1

就像Nikunj Soni说的那样,将height属性设置为body标签将有助于您在每个浏览器中解决问题。我会做的不同之处如下:

而不是设置一个固定的高度,我会设置height:100%,它使您可以打开不同的大小比原来的弹出。

<body style="overflow:auto; height:100%;"> 
     The rest of your HTML code 
</body> 

这也不是最好的解决方案,但你实际上是从你的链接中删除restictions。

希望你找到这个答案有帮助。