簡體   English   中英

使用Javascript突變觀察器函數,如何訪問生成的iFrame的JavaScript函數

[英]Using Javascript mutation observer function, how can I access the JavaScript functions of a generated iFrame

我有一個外部腳本,可在頁面上生成本地iFrame。 iframe正在加載videojs播放器。

我想訪問iframe並調用videojs play()函數開始播放視頻。

唯一的問題是,直到加載它之前,我都無法使用父dom進行訪問,因此我正在使用變異觀察器功能檢查其在頁面上何時生成和加載。

它工作成功,但是我似乎無法訪問videojs函數,我只是得到“無法讀取未定義的屬性播放”。

            var observer = new MutationObserver(function(mutations){
            mutations.forEach(function(mutation) {
                for (var i = 0; i < mutation.addedNodes.length; i++)
                {
                    //console.log(mutation);
                    mutation.addedNodes[i].contentWindow.player.play();
                }
            })                    
        });

我設法通過等待iframe加載來完成此工作:

            var observer = new MutationObserver(function(mutations){
            mutations.forEach(function(mutation) {
                for (var i = 0; i < mutation.addedNodes.length; i++)
                {
                    mutation.addedNodes[i].contentWindow.onload = function(){
                        this.player.play();   
                    };
                }
            })                    
        });

暫無
暫無

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

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