一、父页面访问iframe子页面的js方法
1)父页面
<iframe frameborder="0" name="myContentIframeName" id="myContentIframe"src="examples/completeDemo.html" style="width:99%height:600px"></iframe>
2)iframe页面
<script type="text/plain" id="editor" style="width:700px" >
</script>
<script type="text/javascript">
function getContent(){
var arr = []
arr.push("使用editor.getContent()方法可以获得编辑器的内容")
arr.push("内容为:")
arr.push(ue.getContent())
alert(arr.join("\n"))
return ue.getContent()
}
</script>
3)父页面调用iframe子页面js方法
var editor = window.frames["myContentIframeName"].getContent()
$("#lastContent").val(editor)
方法只有一种:步骤:
1、获取iframe节点
2、获取iframe中的变量
示例
1
2
3
4
5
6
7
8
9
a.html
<iframe
id='x'
name='x'
src='b.html'/>
b.html
<script>
var
y='1'
</script>
在a.html中获取y,则可以通过以下方式
document.frames['x'].y
//先获取frame,在获取y
同域下可以这样实现<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="Generator" content="EditPlus®">
<meta name="Author" content="">
<meta name="Keywords" content="">
<meta name="Description" content="">
<title>Document</title>
</head>
<body>
<iframe id="test" frameborder=0 width=250 height=250 marginheight=0 marginwidth=0 scrolling=no src="a.html"></iframe>
<script type="text/javascript">
// 兼容IE事件绑定
function addEvent(elem, eventName, func) {
if (!elem) return
if (window.addEventListener) {
elem.addEventListener(eventName, func, false)
} else if (window.attachEvent) {
elem.attachEvent('on' + eventName, func)
}
}
function onKeyUp(e) {
e = e || window.event
var iframe = document.getElementById('test')
var keyCode = e.keyCode
if (keyCode === 13) {
iframe.contentWindow.location.reload()
}
}
addEvent(document.body, 'keyup', onKeyUp)
</script>
</body>
</html>