快速获取/设置iframe内对象元素的几种js实现方法


Posted in Javascript onMay 20, 2016

1、IE专用(通过frames索引形象定位): document.frames[i].document.getElementById('元素的ID');

2、IE专用(通过IFRAME名称形象定位): document.frames['iframe的name'].document.getElementById('元素的ID');

以上方法,不仅对IFRAME适用,对FRAMESET里的FRAME也同样适用。IE虽然擅于自定标准,但不得不说它很多的设计还是比较体现人性化的。比如这个,它在同样支持下面的标准路径之外,提供了一个简洁且形象化的写法。

3、通用方法: document.getElementById('iframe的ID').contentWindow.document.getElementById('元素的ID')

注意要加上contentWindow,往往出现问题都是因为这个容易被忽略,它代表FRAME和IFRAME内部的窗口对象。

但是,很明显,这种写法非常要命,太长了。如果要操作一系列里面的元素,这样写起来,实在够受的,就算用复制粘贴大法,眼睛看起来也是个问题。

4、通用方法的简写:

对document.getElementById定义一个短名称,稍微熟悉JS的朋友都知道这个方法。在这里它可以发挥双倍的作用,如下例:

var $id=document.getElementById;
$Id('iframe的ID').contentWindow.$Id('元素的ID') //这样就得到了要取的对象

在这一点上,我还是喜欢IE的做法,比较呵护。因为微软不是一个单独的浏览器开发商,它本身也要大量地编写开发HTML/ASP等文档,所以比较能够做到这一点。而其它的浏览器开发商,基本只是站在一个浏览器的立场,把最基本的链路走通就完事了,很少站在开发者立场去设计出一些类似这样既简便又不失语义化的捷径来。很多人动辄说它们“标准”,在有些地方固然有理,但在有些地方,这种标准也不过是一种冷漠。

以上这篇快速获取/设置iframe内对象元素的几种js实现方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Javascript常考语句107条收集
Mar 09 Javascript
JavaScript开发规范要求(规范化代码)
Aug 16 Javascript
判断一个变量是数组Array类型的方法
Sep 16 Javascript
屏蔽IE弹出"您查看的网页正在试图关闭窗口,是否关闭此窗口"的方法
Dec 31 Javascript
javascript模拟post提交隐藏地址栏的参数
Sep 03 Javascript
JavaScript获取页面上被选中文字的方法技巧
Mar 13 Javascript
JS修改iframe页面背景颜色的方法
Apr 01 Javascript
JS+CSS实现TreeMenu二级树形菜单完整实例
Sep 18 Javascript
用window.onerror捕获并上报Js错误的方法
Jan 27 Javascript
AngularJs 动态加载模块和依赖
Sep 15 Javascript
微信小程序实现手指触摸画板
Jul 09 Javascript
vue项目中播放rtmp视频文件流的方法
Sep 17 Javascript
Bootstrap3学习笔记(二)之排版
May 20 #Javascript
js获取iframe中的window对象的实现方法
May 20 #Javascript
BootStrap3学习笔记(一)之网格系统
May 20 #Javascript
有关JavaScript中call()和apply() 的一些理解
May 20 #Javascript
Bootstrap表格和栅格分页实例详解
May 20 #Javascript
JavaScript 数组some()和filter()的用法及区别
May 20 #Javascript
JS数组操作(数组增加、删除、翻转、转字符串、取索引、截取(切片)slice、剪接splice、数组合并)
May 20 #Javascript
You might like
PHP源码之explode使用说明
2011/08/05 PHP
php长字符串定义方法
2012/07/12 PHP
ajax取消挂起请求的处理方法
2013/03/18 PHP
深入Nginx + PHP 缓存详解
2013/07/11 PHP
PHP JS Ip地址及域名格式检测代码
2013/09/27 PHP
PHP中使用TCPDF生成PDF文档实例
2014/07/01 PHP
php对数组内元素进行随机调换的方法
2015/05/12 PHP
PHP实现的浏览器检查类
2016/04/11 PHP
PHP+redis实现微博的推模型案例分析
2019/07/10 PHP
extjs 04_grid 单击事件新发现
2012/11/27 Javascript
JavaScript中OnLoad几种使用方法
2012/12/15 Javascript
jQuery 获取URL的GET参数值的小例子
2013/04/18 Javascript
一个简单的瀑布流效果(主体形式自写)
2013/05/27 Javascript
javascript删除option选项的多种方法总结
2013/11/22 Javascript
javascript获取select值的方法分析
2015/07/02 Javascript
再谈JavaScript线程
2015/07/10 Javascript
用js编写的简单的计算器代码程序
2015/08/04 Javascript
jQuery地图map悬停显示省市代码分享
2015/08/20 Javascript
AngularJS基础 ng-click 指令示例代码
2016/08/01 Javascript
CSS3+JavaScript实现翻页幻灯片效果
2017/06/28 Javascript
Angular.js项目中使用gulp实现自动化构建以及压缩打包详解
2017/07/19 Javascript
[47:53]DOTA2上海特级锦标赛主赛事日 - 1 败者组第一轮#2COL VS Spirit
2016/03/02 DOTA
python3+PyQt5实现支持多线程的页面索引器应用程序
2018/04/20 Python
Python使用add_subplot与subplot画子图操作示例
2018/06/01 Python
pandas使用apply多列生成一列数据的实例
2018/11/28 Python
selenium处理元素定位点击无效问题
2019/06/12 Python
英国最出名高街品牌:Forever Unique
2018/02/24 全球购物
Gap英国官网:Gap UK
2018/07/18 全球购物
Annoushka英国官网:英国奢侈珠宝品牌
2018/10/20 全球购物
荣耀商城:HIHONOR
2020/11/03 全球购物
保洁主管岗位职责
2013/11/20 职场文书
给物业的表扬信
2014/01/21 职场文书
《黄河颂》教学反思
2014/02/07 职场文书
求职简历自荐信怎么写
2015/03/26 职场文书
结婚喜宴迎宾词
2015/08/10 职场文书
提升Nginx性能的一些建议
2021/03/31 Servers