javascript怎样监听不同窗口的事件啊?

jimmy0223 2008-02-11 09:48:55
如实现环境如下:
------------------------------------------------------------------------------------------
main框架
<frameset rows="60,15,*" cols="*" frameborder="no" border="0" framespacing="0" id="main" >
<frame src="topframe.html" name="top" scrolling="yes" noresize="noresize" id="top" />
<frame src="midframe.html" name="mid" scrolling="no" noresize="noresize" id="mid" />
<frame src="downframe.html" name="down" scrolling="yes" noresize="noresize" id="down" />
</frameset>
------------------------------------------------------------------------------------------

top框架
<script language='javaScript' type='text/javaScript'>
\\读down框架操作
function temp1() {
parent.frames['down'].document.form1.t2.value =parent.frames['down'].document.forms[0].t2.value+2;
return false;
}
\\监听down框架事件
var bObj=parent.frames['down'].document.getElementById("bu");
bObj.onclick= objclick;
function objclick(){alert(this.value)};

</script>

------------------------------------------------------------------------------------------
down框架
\\top框架读内容
<form id="form1" name="form1" method="post" action="">
<input type="text" name="t1" value="1" />
<input type="text" name="t2" value="1" />
</form>
\\top框架监听内容
<input type="button" value="我是 button" id="bu">
------------------------------------------------------------------------------------------

现在问题是,我需要在top或main框架中读取和监听down框架,发现可以读取down的数据,但是无法监听down框架的事件。请问有没有办法实现?
实现时还有以下限制条件:
1、由于在down框架用来访问外部链接,好像无法加入自己的代码,所以这个实现方式可能不可行(但好像javascript只能监听当前页面的事件,不知道技术上(包括其他语言)能否实现?)
2、不知道能否有其他办法监听?如写一个代理服务器进行接收down框架中访问页面的操作(是否不能把每个动作都监听,只能监听提交给服务器的信息?)

谢谢!
...全文
198 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
剑心永远OK 2008-02-12
  • 打赏
  • 举报
回复
投机取巧?
joycheney 2008-02-12
  • 打赏
  • 举报
回复
如果down框架用来访问外部链接,抱歉,没有任何办法可以解决,因为跨域存在安全问题,所以你想要监听跨域的内容是被浏览器禁止的。

我几乎可以猜到你这样做的用途,你可能有自己的网站,想要投放一定的广告,但是你想监听广告被引导到那一步了。

不过很可惜,我听说过很多想要这样做的人,无一例外都失败了
liuhongxing1908901 2008-02-11
  • 打赏
  • 举报
回复
liuhongxing1908901 2008-02-11
  • 打赏
  • 举报
回复
看看我的这篇文章:
http://blog.csdn.net/liuhongxing1908901/archive/2008/02/11/2088426.aspx
bindAsEventListener方法专门解决这个问题。
jimmy0223 2008-02-11
  • 打赏
  • 举报
回复
自己顶一下

87,904

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧