我正在尝试使用Chrome浏览器扩展程序。我希望能够将任何文本输入到浏览器中(通过浏览器的URL栏或社交媒体网站上的文本框等)并将该文本发送到服务器。我想知道这是否可以用于chrome以及我需要使用哪些功能来实现这一目标?
我怀疑扩展的逻辑是这样的:只要点击链接,输入表单/文本框中有文本,提取文本或表单输入并使用一些JS请求库将其发送到服务器。
可以使用哪种Chrome API函数将文本输入到表单中?
答案 0 :(得分:0)
您可以使用 content_script 获取 DOM 信息(输入, textareas 等),该信息可直接访问网页数据。可以使用chrome API chrome.tab.query通过 popup.js 或 background.js 访问网址数据。
在过去,我使用MutationObservers获得了最好的运气,这会查看网页的实时更改(或指定您希望观察者在何处指定)。然后,您可以将该数据发送到服务器。
小例子。
function extractinputdata() {
var inputdata = document.getElementById('some specfic HTML element')
if (inputdata != null) {
new MutationObserver(function(){
//when a change has been made to the element or its children, you can record the new data
}).observe(inputdata, {characterData: true, childList: false, subtree:true});
}
}