18910140161

教你在iframe标签中制作滚动条样式

顺晟科技

2021-06-16 10:34:35

364

首先,我们来看看关于滚动条的离开和保存的HTMLiframe标签:

iframe嵌入页面后,我们有时需要调整滚动条,比如去掉所有滚动条,去掉右滚动条保留下滚动条,去掉下滚动条保留下滚动条。那么我们该怎么办呢?

一:移除所有滚动条

种方法:iframe有一个滚动属性,它有三个值:auto、yes和no。

滚动条:自动-滚动条在必要时出现

滚动条:是-总是显示滚动条

滚动:否-总是隐藏滚动条

当scrolling:no设置时,所有滚动条都消失。

第二种方法:我发现除了滚动,它还可以去掉所有的滚动条,还有一种方法,就是在嵌入的页面中设置body {overflow: hidden},这样滚动条也可以去掉,这也是我们只想去掉某个滚动条时使用的属性。

二:去掉右边的滚动条,保留底部的滚动条

如果只想保留底部滚动条,可以设置body { overflow-x:auto;overflow-y:隐藏;}

三:去掉底部滚动条,保留右边滚动条

设置正文{ overflow-x:hidden;overflow-y:auto;}

我们已经知道这两个属性可以设置滚动条的显示和隐藏,那么两个属性同时设置会出现什么效果呢?

通过检测,我发现当滚动='auto '或' yes '时,如果设置了body,那么就会使用body中的设置;当滚动='否'时,无论设置什么正文,都会使用滚动的设置,即删除所有滚动条。

接下来,我们来谈谈如何移除水平滚动条:

可以通过以下方法将其删除:将其添加到iframe中包含的网页

风格

html { overflow-x : hidden;}

/style

水平滚动条可以移除,垂直滚动条也可以以同样的方式移除。

解决加载动态高度的iframe后出现双滚动条的问题;

如果iframe数据是通过ajax异步加载的,那么其中的div高度也是动态获取的。这里有个问题。当div中的内容未加载时,上面的varheight只能获得未打开的高度,而ajax加载后无法获得实际高度。在这里,我们需要等待所有的文档树被加载,然后再加载方法来获得实际的高度。

最终版本,写在iframe页面上

varht=setInterval('getHeight ',100);

functiongetHeight(){

if(document . readystate==' complete '){

var height=(document . body . scroll height)' px ';

$('parentdiv ',window.parent.document)。css('height ',height);

window . ClearInterval(GH);

}

}

可能有更简单的解决方法,但这是我一步一步遇到和解决问题的思路和代码,值得记录。当然滚动属性也可以。可以研究一下。如果你有什么简单的方法,我们可以一起讨论。请在下面留言

本文转载自中文网站

相关文章
我们已经准备好了,你呢?
2024我们与您携手共赢,为您的企业形象保驾护航