用js互相调用iframe页面内的js函数
近期我投入大量时间和精力于论文开题报告的准备之中,然而手痒难耐,我又重新投身于Web设计工作。这次我遇到了一个颇具挑战性的问题。过去,我在设计Web页面时,主要关注Internet Explorer(IE)的兼容性,很少考虑Firefox,更不用说Chrome了。但现在,我意识到无法兼容Firefox的Web页面就如同粗制滥造的山寨产品一样无法让人接受。我开始注意兼容性问题,并在实践中遇到了一个具体的挑战。
在HTML中,有一个名为
```html
```
这个代码片段中的iframe会链接到"left.html"页面。对于右栏也是类似的设置。我所设计的页面预览效果如下:现在的问题是,如何使页面更加实用?例如,点击其中的链接能在右栏中显示相应的内容,这显然需要通过JavaScript来实现。
原始的、不兼容的方法在此不必多言。要实现这一功能,请遵循以下步骤:
1. 首先获取右栏的iframe对象:
```javascript
var frames = document.getElementById("frameid"); //这里的frameid即右栏iframe的id名
```
2. 重置其src值以实现页面跳转:
```javascript
frames.src = pageurl; //这里的pageurl即要显示的目标页面
```
如果希望调用右栏中的函数,比如名为`right()`的函数,那就不是那么简单了。由于leftframe内嵌在容器页index.html中,因此需要返回到index这一级别并获取rightframe对象:
```javascript
var frames = window.parent.window.document.getElementById("frameid");
```
接着,要执行其页面中的函数,必须获得window对象。这里有一个重要的对象`contentWindow`,通过获得这个对象,就可以执行其中的函数了。例如:
```javascript
frames.contentWindow.right();
```
以上代码经过测试,兼容IE6、Firefox3以及chrome2.0。虽然还未在IE7上测试,但预计应该也能正常运行。这个方案对于跨浏览器兼容性有很好的表现。希望这个分享能帮助到有同样需求的朋友们。
网站源码
- 用js互相调用iframe页面内的js函数
- cdr怎么绘制简单的人脸图案-
- Windows10正式版和预览版有什么不同? 优点多余缺
- 用CSS的float和clear属性进行三栏网页布局
- 3dsmax怎么单独移动物体坐标轴并还原-
- 暗影精灵6值得入手吗-暗影精灵6 Air游戏本云评测
- ai怎么设计一系列小仓鼠表情包- ai小仓鼠表情包
- ai打开psd文件图片后色板中的色块没有了怎么办
- 无法居中,margin-0 auto;属性
- Freebsd 下运行 QQ For Linux 的方法
- AI怎么设计彩色圆点组成的漩涡图形- ai创意圆点
- 摄影入门:图文讲解如何分辨手震还是相机走焦
- 惠普暗影精灵4 Pro游戏本值得买吗 惠普暗影精灵
- CAD怎么绘制建筑平面图- cad平面图的画法
- flash怎么导出项目- flash导出FXP项目的教程
- CSS背景图片固定宽高比自适应调整的实现方法