<iframe id="myiframe" src="doc.html">
<button id="btn1"></button><!-- how to get this id? -->
</iframe>
$('#myiframe').on('click', function() {
alert(this.id);
});
我希望它提醒 「BTN1」。
<iframe id="myiframe" src="doc.html">
<button id="btn1"></button><!-- how to get this id? -->
</iframe>
$('#myiframe').on('click', function() {
alert(this.id);
});
我希望它提醒 「BTN1」。
不可以。出於安全原因,無法做到這一點。
在iframe和當前頁面之間進行通信的唯一方法是如果iframe中的url已經包含一些javascript並更新iframe url。 iframe然後將一些數據放入頁面可以檢索的url中。
如果iframe的目標不屬於你,這是不可能的。
this.id是無效的,我認爲,這也將在技術上選擇了錯誤的ID(#myIframe)
你想要一個複雜的解決方法可能像this.children().attr('id');
我該怎麼做? – 2014-11-24 00:25:37
'this.id'很好。只有*問題*是 - 它很簡單,它不是* jQuery *。 – 2014-11-24 04:50:50
順便說一句,你應該在你的*答案*中發表*聲明,因爲這不是論壇。討論進入**評論**,而不是通過答案。 – 2014-11-24 04:53:13
見jQuery cross domain iframe scripting可能使這項工作。
雖然不推薦這樣做;最好的方法是重新構建文檔並嘗試解決不同的問題。例如,您可以通過ajax調用請求遠程內容並將其插入到文檔中。
例如,使用jQuery.load:
$(".target-element").load("doc.html", null, function() {
var id = $(".target-element").find("#btn").attr("id");
});
的
怎麼做到的? – 2014-11-24 00:24:19
可能重複的[如何選擇使用的document.getElementById內部IFRAME元素(http://stackoverflow.com/questions/14451358/how-to-pick- iframe-using-document-getelementbyid) – 2014-11-24 00:10:21
如果您使用'
doc.html在我的服務器,但我需要得到你的ID。 – 2014-11-24 00:23:42