簡體   English   中英

無法在Firefox中的同域iframe中調用函數

[英]Can't invoke function in a same-domain iframe in Firefox

我為Greasemonkey編寫代碼,並且有一個不帶src的iframe,在其中添加了這樣的代碼:

 var appendToHead = function(iframe, content) {
    var doc = iframe[0].contentWindow.document;
    var element = doc.createElement('script');
    element.type = 'text/javascript';
    element.text = content;
    doc.head.appendChild(element);
};


我在Firebug中看到該功能已添加到iframe中。 但是,當我嘗試獲取它們時,例如EG frames[0].contentWindow.functionName undefined並且仍然在調試器中看到它們。

在我使用Greasemonkey之前,這種方法很好用。 如何調用這些功能?

請參閱如何從用戶腳本訪問iframe的javascript

您將調用如下函數: frames[0].functionName(); ,但必須來自注入的代碼 ,而不是Greasemonkey腳本作用域。 (除@grant none以外,在某些情況下可能不起作用。)

您可能還需要延遲,具體取決於。 發表您正在做的完整的工作示例。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM