1

我有一個問題與我的一個項目jQuery的:獲取身體沒有後代的iframe

我正在開發一款Chrome擴展程序注入的HTML代碼插入到頁面中,特別是我注入多數民衆贊成由引發的引導模式瀏覽器操作。

我目前面臨的問題是負責在body末尾註入模態的代碼也會將其注入到任何iframes當前。

這是我使用的代碼:

$('html > body:not(iframe body)').append(container); 

可悲的是,這並不導致選擇預期body元素。由於代碼注入,而我在源文件沒有控制,我不能依靠.first().last()作爲一種解決方法

這個問題的任何幫助,將不勝感激:)

編輯: 通常有問題iframes#document類型的元素中(我會發布它的一個形象,如果我有需要的聲望)

回答

1

爲myrsnipe如果你希望腳本只注入你必須設置​​在清單頂部框架提及。我正在寫這個,所以它顯示爲答案,而不僅僅是在評論中。

1

嘗試使用filter

$('body').filter(function() { 
    return !($(this).closest('iframe').length > 0); 
}).append(container); 

Demo

+0

這很好用,謝謝! – myrsnipe

+0

@myrsnipe ..很高興有幫助:) –

+0

看來我有點太急於接受這個答案,這不能可靠地繼續工作。這似乎取決於iframe的內容如何佈局。我仍然欣賞這個建議@Sushanth – myrsnipe