作者mesak (米沙)
看板Ajax
标题[问题] iframe jquery function 呼叫
时间Tue Jul 27 01:41:53 2010
请问一下
A 网页中 插入 IFRAME ID="F" SRC="B.HTM"
DIV ID="TEST"
B 网页中
function ff(){
alert('ff');
}
在FF中好像没办法从 A网页呼叫 ff()
var oIf = document.getElementById('F'),
win = oIf.contentWindow;
在A网页写
$('#TEST').click(function(){
win.ff()
})
会出现 win.ff is undefined
但是我写在B 里面
$("#TEST", parent.document.body).click(function(){
ff()
})
这样又可以很正常运作.....有人可以说明一下为什麽吗?
只限定 FIREFOX 因为我是在写 GREASEMONKEY.....
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 112.104.135.168
1F:推 s25g5d4:当你写在B里时呼叫的ff()是在B里定义的所以找的到 07/27 22:54
2F:→ s25g5d4:但是你写在A里时却没有相应的函数可供呼叫 (iframe与原网 07/27 22:55
3F:→ s25g5d4:页的js是分开的 但是可以透过几个方法呼叫就是了 07/27 22:55
4F:推 s25g5d4:可以试试window.frames[0] 07/27 22:57
6F:→ mesak:楼上提供的连结是操作 DOM 我指的是执行 FUNCTION 喔 07/28 00:55
7F:→ mesak:A无法呼叫 B里面的 FUNCTION 吗? 07/28 00:56
8F:推 shadowjohn:$("#F")[0].contentWindow.document.alert('a'); 07/28 08:09
9F:推 shadowjohn:win.document.ff(); 07/28 09:46
12F:推 shadowjohn:再看看吧~我刚才又小改了一下 14:09 07/28 14:09
13F:→ mesak:感谢,只是 搞不好用在 外挂上不能用了....想问一下 07/28 14:32
14F:→ mesak:当 CLICK事件成立 IFRAME内的函式还没读取完毕,这样CLICK 07/28 14:33
15F:→ mesak:还有办法运作吗? 07/28 14:33
16F:推 shadowjohn:那你可以用 iframe 的 onload 07/28 14:37
17F:→ shadowjohn:<iframe onloal="........" ....> 07/28 14:37
18F:→ shadowjohn:像是onload="$('#btn').show();" 这时你的按钮才出现:) 07/28 14:39
19F:→ mesak:嗯 过两天试试看...现在在改 另一之外挂 Orz 谢谢shadowjohn 07/28 14:48