使用javascript隐藏IFRAME滚动条

时间:2010-09-17 09:20:12

标签: javascript jquery iframe scroll

我有一个jQuery项目,我在带有动画的叠加(boxy插件)弹出窗口中打开带有滚动条的iframe(scrolling = auto)。当叠加层关闭时,我希望弹出窗口可以补间和淡出。到目前为止一切都很好,但是当iframe的大小减小时,滚动条突然出现在整个事物消失之前。

我尝试操纵iframes滚动属性,但那时iframes的DOM对象似乎不存在。有人可以帮忙吗?

3 个答案:

答案 0 :(得分:4)

不需要JavaScript。只需在iframe上使用以下CSS:

overflow: hidden;

答案 1 :(得分:0)

IIRC,滚动条属于框架页面,必须在那里禁用。如果您的iframe是跨域的,则可能无法实现。

答案 2 :(得分:0)

没有滚动条的无框架iframe:

 var el = document.createElement("iframe");
 var iframe_style = "overflow:hidden; margin:0;padding:0;"
 var ifattr = {
        id: 'my_iframe', width: '520', height: '300', 'scrolling': 'no', 'marginWidth':0,
        'marginHeight':0, 'noResize': 0, 'border': 0, 'frameBorder':0, 'frameSpacing':0,
        'background': 'transparent','allowTransparency': 'allowTransparency',
        'name' :'my_iframe','style':iframe_style};

 for (var i in ifattr) {
      el.setAttribute(i, ifattr[i]);
 }

这是纯JS,可以使用attr()轻松移植到jQuery,在IE6-8,FF中测试。

里面的文档应该使用:body {overflow:hidden;} - 如果确实需要,则不进行测试。