chrome extension获取生成的输入的值

时间:2016-08-10 15:51:03

标签: javascript jquery google-chrome google-chrome-extension

我正在创建Chrome扩展程序,可以访问页面的DOM并获取某些输入的值。 问题是在我想要访问content_script中的输入文本的值的页面中我得到:

  

无法阅读财产' val'为null

因为,输入是从我无法修改的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);

1 个答案:

答案 0 :(得分:1)

由于您已经提到输入是动态生成的,因此onload事件触发时可能仍然不存在。如果您不想使用setTimeout之类的内容来推迟检索元素,则可以使用MutationObserver来对DOM中的更改做出反应,例如observing the input being inserted