我正在编写一个 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/