2016-08-10 49 views
0

我創建一個Chrome擴展,訪問頁面的DOM並獲得一些輸入的值。 的問題是,我要訪問我content_script輸入文本的價值我得到的頁面:鉻擴展獲取生成的輸入的值

無法讀取空

的特性「VAL」,因爲,產生輸入動態從一個我不能修改的js文件。

我把:「run_at」:「document_end」在我的清單文件和內容腳本我等待頁面完全加載

window.addEventListener("load", function load(event){ 
    window.removeEventListener("load", load, false); //remove listener, no longer needed 

    // $("input[name$='incident.state']").val(); 

    var element =$('#incident.state').val(); 
    alert(element); 


},false); 
+0

使用[調試器](https://developer.chrome.com/devtools/docs/tips-and-tricks):在該行上設置斷點並在Elements面板中檢查頁面源。另外請確保您在內容腳本之前注入jQuery。 – wOxxOm

+0

我已經將jquery添加到了我的內容腳本上 – Lizinh

回答

0

既然你已經提到,輸入動態生成的,在onload事件觸發時它可能仍然不存在。如果您不想使用類似setTimeout的內容推遲檢索元素,則可以使用MutationObserver對DOM中的更改作出反應,例如observing the input being inserted