jQuery取得iframe中元素的常用方法详解


Posted in Javascript onJanuary 14, 2016

本文实例分析了jQuery取得iframe中元素的常用方法。分享给大家供大家参考,具体如下:

jquery取得iframe中元素的几种方法:

在iframe子页面获取父页面元素

代码如下:

$('#objId', parent.document);

搞定...

在父页面 获取iframe子页面的元素:

$("#objid",document.frames('iframename').document)
$(document.getElementById('iframeId').contentWindow.document.body).html()

显示iframe中body元素的内容。

$("#testId", document.frames("iframename").document).html();

根据iframename取得其中ID为"testId"元素

$(window.frames["iframeName"].document).find("#testId").html()

用JS或jQuery访问页面内的iframe,兼容IE/FF

注意:框架内的页面是不能跨域的!

假设有两个页面,在相同域下.

index.html 文件内含有一个iframe:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>页面首页</title>
</head>
<body>
<iframe src="iframe.html" id="koyoz" height="0" width="0"></iframe>
</body>
</html>

iframe.html 内容:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>iframe.html</title>
</head>
<body>
<div id="test">3water.com</div>
</body>
</html>

1. 在index.html执行JS直接访问:

document.getElementById('koyoz').contentWindow.document.getElementById('test').style.color='red'

通过在index.html访问ID名为'koyoz'的iframe页面,并取得此iframe页面内的ID为'test'的对象,并将其颜色设置为红色.

此代码已经测试通过,能支持IE/firefox .

2. 在index.html里面借助jQuery访问:

$("#koyoz").contents().find("#test").css('color','red');

此代码的效果和JS直接访问是一样的,由于借助于jQuery框架,代码就更短了.

收集网上的一些示例:

用jQuery在IFRAME里取得父窗口的某个元素的值只好用DOM方法与jquery方法结合的方式实现了

1. 在父窗口中操作 选中IFRAME中的所有单选钮

$(window.frames["iframe1"].document).find("input:radio").attr("checked","true");

2. 在IFRAME中操作 选中父窗口中的所有单选钮
$(window.parent.document).find("input:radio").attr("checked","true");

父窗口想获得IFrame中的Iframe,就再加一个frames子级就行了,如:
$(window.frames["iframe1"].frames["iframe2"].document).find("input:radio").attr("checked","true");

希望本文所述对大家jQuery程序设计有所帮助。

Javascript 相关文章推荐
js获得当前时区夏令时发生和终止的时间代码
Feb 23 Javascript
深入浅析Node.js 事件循环
Dec 20 Javascript
Angularjs使用directive自定义指令实现attribute继承的方法详解
Aug 05 Javascript
原生js实现放大镜特效
Mar 08 Javascript
js es6系列教程 - 新的类语法实战选项卡(详解)
Sep 02 Javascript
除Console.log()外更多的Javascript调试命令
Jan 24 Javascript
解决vue单页使用keep-alive页面返回不刷新的问题
Mar 13 Javascript
Vue 菜单栏点击切换单个class(高亮)的方法
Aug 22 Javascript
详解async/await 异步应用的常用场景
May 13 Javascript
如何利用vue+vue-router+elementUI实现简易通讯录
May 13 Javascript
vue-resourc发起异步请求的方法
Feb 11 Javascript
微信小程序实现购物车小功能
Dec 30 Javascript
js实现prototype扩展的方法(字符串,日期,数组扩展)
Jan 14 #Javascript
分享网页检测摇一摇实例代码
Jan 14 #Javascript
jquery淡入淡出效果简单实例
Jan 14 #Javascript
jQuery实现的左右移动焦点图效果
Jan 14 #Javascript
详解JavaScript中的构造器Constructor模式
Jan 14 #Javascript
jquery+json实现动态商品内容展示的方法
Jan 14 #Javascript
jQuery遮罩层效果实例分析
Jan 14 #Javascript
You might like
基于mysql的bbs设计(一)
2006/10/09 PHP
php-fpm开启状态统计的方法详解
2017/06/23 PHP
PHP对称加密算法(DES/AES)类的实现代码
2017/11/14 PHP
源码分析 Laravel 重复执行同一个队列任务的原因
2017/12/25 PHP
PHP接入微信H5支付的方法示例
2019/10/28 PHP
CentOS7系统搭建LAMP及更新PHP版本操作详解
2020/03/26 PHP
Exitjs获取DataView中图片文件名
2009/11/26 Javascript
jQuery代码实现表格中点击相应行变色功能
2016/05/09 Javascript
jQuery stop()用法实例详解
2016/07/28 Javascript
jquery插件treegrid树状表格的使用方法详解(.Net平台)
2017/01/03 Javascript
jquery 实时监听输入框值变化的完美方法(必看)
2017/01/26 Javascript
详解vue2.0监听属性的使用心得及搭配计算属性的使用
2018/07/18 Javascript
Jquery实现无缝向上循环滚动列表的特效
2019/02/13 jQuery
axios异步提交表单数据的几种方法
2019/08/11 Javascript
vue使用原生swiper代码实例
2020/02/05 Javascript
vue组件讲解(is属性的用法)模板标签替换操作
2020/09/04 Javascript
JavaScript中的几种继承方法示例
2020/12/06 Javascript
Python3.x和Python2.x的区别介绍
2013/02/12 Python
从零学Python之入门(五)缩进和选择
2014/05/27 Python
Python遍历目录中的所有文件的方法
2016/07/08 Python
python文件名和文件路径操作实例
2017/09/29 Python
python数据结构学习之实现线性表的顺序
2018/09/28 Python
python3实现网络爬虫之BeautifulSoup使用详解
2018/12/19 Python
Python除法之传统除法、Floor除法及真除法实例详解
2019/05/23 Python
python opencv 简单阈值算法的实现
2019/08/04 Python
Python实现列表中非负数保留,负数转化为指定的数值方式
2020/06/04 Python
Python 抓取数据存储到Redis中的操作
2020/07/16 Python
python实现图片,视频人脸识别(opencv版)
2020/11/18 Python
丝芙兰意大利官方网站:Sephora.it
2019/12/13 全球购物
Python使用openpyxl复制整张sheet
2021/03/24 Python
电子商务专业学生职业生涯规划
2014/03/07 职场文书
学历公证委托书
2014/04/09 职场文书
差生评语大全
2014/05/04 职场文书
学前班评语大全
2014/05/04 职场文书
Python中的np.argmin()和np.argmax()函数用法
2021/06/02 Python
vue实现列表拖拽排序的示例代码
2022/04/08 Vue.js