日期:2014-05-18  浏览次数:20454 次

关于跨页面执行JS函数
我有一个主页面A.aspx,当这个页面加载完成后,在当前页面弹出一个iframe页面B.aspx(此处的iframe用到colorbox插件)。
页面A.aspx引用一个JS文件myJs.js(myJs.js还依赖jQuery.js等文件),里面有一个函数myFunction,现在我需要在页面B.aspx触发这个myFunction,然后去响应页面A.aspx。请问能实现吗?

A.aspx页面
HTML code

<script src="js/jquery-1.6.2.js" type="text/javascript"></script>
<script src="js/myJs.js" type="text/javascript"></script>


myJs.js文件
JScript code

function myFunction(){
    //some js code
}


B.aspx页面
HTML code

<a href="#" onclick="myClick();"></a>


myClick()调用myFunction(),然后作用于A.aspx页面。

------解决方案--------------------
用用opener或者parent关键字调用父页面的函数
------解决方案--------------------
探讨

引用:

用用opener或者parent关键字调用父页面的函数


能给个例子吗?谢谢

------解决方案--------------------
如果B页面是嵌入在A的Iframe中:
if (window.parent != null) { // open in iframe
window.parent.myFunction();
}

如果B页面是A页面中的window.open打开:

if (window.opener != null) {
window.opener.myFunction();
}

------解决方案--------------------
探讨

引用:

可以再A页面放一个 按钮,点击按钮触发 myFunction()


在b页面 调用a页面按钮的点击事件

谢谢,已经看到效果了。能从页面B传两个参数到页面A(点击时传过去),然后再执行这个myFunction()函数吗?