javascript - 检测由 chrome 内容脚本引起的字段值更改的最佳方法

标签 javascript jquery google-chrome-extension content-script

我正在编写一个 chrome 插件,它利用一个网站(我自己也在编写)来与用户交互。

插件中的内容脚本使用 jQueries .val() 方法更改网站中的某些字段值。

网站需要能够通过自己的 JavaScript 检测到此类更改,以便相应地更新其他内容。

但是,值发生变化does not fire a onchange event由于网站 js 和内容脚本是独立的,因此当内容脚本中的代码触发事件时,网站 jQuery 中的 element.change() 函数不会使用react。

让网站js检测到字段值变化的最佳方式是什么?

PS:如果您认为这是一个设计问题(扩展程序和网站之间的通信与显示功能混合在一起),我也对您的建议感兴趣。

最佳答案

这就是我最终解决它的方法:

inputChanged = function(inputElement,callback){

    oldInput = inputElement.val();

    setInterval(function(){
    if (oldInput!=inputElement.val()){
        oldInput = inputElement.val();
            callback();
    }
},200);

}

它并不优雅,但很有效。

关于javascript - 检测由 chrome 内容脚本引起的字段值更改的最佳方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18776558/

相关文章:

javascript - 在Nodejs中将base64 png转换为jpeg图像

javascript - 在 jquery 中停止其他网络请求

javascript - 是否可以在使用 chrome.tabCapture API 录制的 chrome 中切换录制选项卡

javascript - Chrome Commands API 使默认弹出窗口可见

google-chrome-extension - 如何从内容脚本中使用 popup.html 注入(inject) iframe

javascript - 在javascript中添加div?

javascript - 网站作为社交网络上的链接的漂亮外观

javascript - jQuery onClick 适用于前两次点击,但此后停止

javascript - 如何在css和jquery之间切换

javascript - 实时检查列表元素数量并使用 jQuery 为它们添加一些样式