国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術文章
文章詳情頁

javascript - 父頁面監聽iframe中的事件問題

瀏覽:104日期:2022-12-24 08:42:12

問題描述

始終無法監聽到,是什么原因?

parent.html

<body> <iframe src='http://m.cgvv.com.cn/wenda/son.html' frameborder='0'></iframe><script src='http://m.cgvv.com.cn/wenda/jquery.js'></script><script> $(function(){$($(’#iframe’)[0].contentWindow).on(’dosomething’, function(){ alert(’接收到到iframe的事件’);}); });</script></body>

son.html

<body><h1>son</h1> <button id='button'>trigger</button><script src='http://m.cgvv.com.cn/wenda/jquery.js'></script><script> $(function(){$(’#button’).on(’click’, function(){ $(window).trigger(’dosomething’);}); });</script></body>

謝謝!

Dont

剛才搜索時發現的,也不錯,兼容性可以MessengerJShttps://github.com/biqing/Mes...跨文檔通信解決方案

問題解答

回答1:

son.html

$(function(){$(’#button’).on(’click’, function(){ window.parent.$(window).trigger(’dosomething’);}); });

事件是在父頁面的jquery里定義的,要觸發需要交由父頁面的jquery來負責觸發。

jquery源碼太久沒看了,找半天,沒找到對應的內容來說明。

回答2:

頁面間通信可以使用 postMessage。

或者只在同一個頁面綁定和處理事件。

$(’#iframe’).contents().find(’#button’).on('click', function(){ $(window).trigger(’dosomething’);});回答3:

無法監聽到的原因是因為父頁面通過on方法執行事件綁定的時候,將事件回調函數注冊在了父頁面的jquery對象中。而子頁面在執行trigger方法的時候只會尋找子頁面的jquery對象中注冊的事件回調,所以在事件觸發后執行不了父頁面注冊的事件回調函數,因為在子頁面的jquery對象里找不到。

回答4:

兩個jq, 兩個環境, 確定沒問題么?

------ 上面是原答案, 下面是我被舉報以后的吐槽 -------

我想請問舉報我的那個, 兩個jq環境, 這是不是你無法觸發事件的原因? 我這個回答有什么問題? 你舉報的理由是啥?

標簽: JavaScript
相關文章:
主站蜘蛛池模板: 亚洲男人网 | 国产精品正在播放 | 亚洲一区二区精品 | 在线看国产 | 欧美成人中文字幕 | 国产偷国产偷亚洲高清在线 | 成人性动漫高清免费观看网址 | 日本成a人伦片 | 日本精品久久 | 成年人三级黄色片 | 中国一级特黄剌激爽毛片 | 亚洲国产精品免费在线观看 | 一区二区不卡久久精品 | 欧美日韩亚洲一区二区三区在线观看 | 免费一看一级欧美 | 手机亚洲第一页 | 一级女毛片 | 欧美67194| 澳门一级特黄真人毛片 | 成人午夜在线视频 | 中文字幕二区三区 | 亚洲一区二区三区不卡视频 | 欧美特级午夜一区二区三区 | 日本三级成人中文字幕乱码 | 精品国产综合成人亚洲区 | 亚洲精品午夜一区二区在线观看 | 亚洲一区高清 | 欧美在线视频 一区二区 | 亚洲一区免费观看 | 日本色综合网 | 中文字幕人成乱码在线观看 | gayxxxxgay中国老头 | 欧美激情 自拍 | 久草在线看片 | 久久福利青草精品资源站 | 欧美成人私人视频88在线观看 | 久草视频中文 | 男人女人做性全程视视频 | 国产伦精品一区二区三区四区 | 亚洲精品www久久久久久久软件 | 国产免费久久精品99re丫y |