funtion changeText(int txtBM)
{
这里设置文字大小为textBM
}
而主页面中可以这样调用:
parent.frames[ "iframeName//这是iframe的name值 "].window.changeText(12)
应用场景是:iframe页面没有滚动条,在父窗体中出现滚动条,锚点标记就会失效,因为,锚点是根据当前窗口滚动条滚动窗口的,成为子窗体后没有了滚动条,自然不会滚动。
解决办法是:用js判断页面是否被嵌套,用js计算iframe在父窗体位置,锚点在firame中的位置,两者相加成为父窗体的滚动。
遇到问题:获取父窗体元素(因为有域限制,所有需要在网络环境下方位(即http://domain.com));父窗体嵌套多个iframe,判断是否是当前iframe页面。
同域下可以这样实现<!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>