2016-06-11 120 views
0

我做了一个chrome扩展以在搜索栏中输入一个搜索字符串,该搜索栏会自动更新下面的表格。我一直在尝试很多不同的事情,“键盘”似乎实际上触发了更新表格的函数。 - 请注意,我不拥有这个网站,我无法访问代码!Chrome控制台和扩展之间的不同结果

我使用jQuery像这样输入字符串:

$("#filter").val("apple").trigger('keyup'); 

如果我把这个变成铬合金控制台,搜索栏被填充表得到更新,没有任何问题。

如果我将它放入铬扩展,它键入文本,但它不会触发表的更新过程。如果我然后单击搜索字段,然后按箭头键(例如),表格会更新。

我使用了一个向我的扩展添加jQuery的指南。

  • 是否有任何权限需要使这一小小的代码行触发此网站的事件?

+0

在你的清单中,你在jQuery之前注入你的内容脚本(inject.js)。尝试更改注入的内容脚本的顺序。 –

+0

嘿,这听起来确实有道理,但可悲的是,它没有改变任何东西。不管怎么说,多谢拉! –

回答

1

我的回答是用香草的JavaScript。你可以用类似的方法模拟一个按键(在这种情况下,键盘):

var filter = document.getElementById("filter"); 
filter.value = "apple"; 
filter.dispatchEvent(new KeyboardEvent("keyup", { 
    bubbles: true, 
    cancelable: true, 
    key: "ArrowUp" 
    })); 
+0

哇。简单的解决方案,工作得很好,我花了一个多星期的时间解决了这个问题。谢谢你,我的朋友!祝你今天愉快! –

相关问题