我必须编写一个扩展名,以便将用户凭证保存到我的数据库服务器(就像在LastPass中一样)。如何从活动选项卡上的身份验证表单抓取提交操作,以获取输入的登录名和密码,以便使用我的扩展名保存并向用户显示对话框(如果他想保存凭证)?如何捕获来自Chrome扩展的提交动作
1
A
回答
1
添加内容脚本在您的清单,并将其设置在一些网页上运行:
"content_scripts": [{
"matches": ["http://*.example.com/*"],
"js": ["form_submits.js"],
"run_at": "document_start"
}]
还添加权限:
"permissions": [
"tabs", "http://*.example.com/*"
],
在这个内容脚本监听事件的形式“的onsubmit” ,然后使用chrome.extension.sendRequest()与您的分机联系:
for (var i = 0; i < document.forms.length; i++) {
document.forms[i].addEventListener("submit", function(){
var form = this.form;
var data = [form.elements["user"], form.elements["password"]];
// contact with your background page and send the form data.
chrome.extension.sendRequest({'name':'form_submit', 'data':data}, function(){ /* my callback if needed */ }, false);
}
在您的背景脚本添加监听器,这些调用:
chrome.runtime.onMessage.addListener(function(request, sender, callback) {
switch (request.name) {
case 'form_submit':
var data = request.data;
// do something with your form credentials.
break;
}
});
**** ****编辑
你可以还就当前的活动选项卡直接执行JavaScript和添加表单提交监听器:
第一让当前窗口和活动标签:
chrome.windows.getCurrent(function callback)
chrome.tabs.getSelected(integer windowId, function callback)
http://code.google.com/chrome/extensions/windows.html#method-getCurrent
http://code.google.com/chrome/extensions/tabs.html#method-getSelected
然后在它执行JavaScript:
chrome.tabs.executeScript(integer tabId, object details, function callback)
http://code.google.com/chrome/extensions/tabs.html#method-executeScript
全面的谷歌Chrome扩展API是在这里:
相关问题
- 1. 如何获取表单提交的值popup.html Chrome扩展
- 2. 如何让Chrome自动运行扩展?
- 3. 在Chrome扩展中反复捕获DOM
- 4. 如何制作自动运行的Chrome扩展程序?
- 5. 使用sahi自动化Chrome chrome扩展
- 6. Chrome扩展程序捕获来自各种会议软件的音频
- 7. getUserMedia API无法捕获音频以及来自Chrome扩展的视频
- 8. 来自特定域的chrome扩展块
- 9. Google Chrome扩展程序(如Aviary)如何捕获屏幕(网页)?
- 10. 如何捕获来自我自己的Firefox Web扩展的流量
- 11. Chrome扩展:如何捕获文本,而不使用弹出
- 12. 我如何在Chrome扩展中捕获下载进度
- 13. Chrome扩展程序 - 如何捕获所有运行时异常
- 14. Mozilla(Firefox,Thunderbird)扩展名:如何获得扩展名(来自install.rdf)?
- 15. 获取Chrome扩展
- 16. 在Chrome扩展中提交表单不起作用
- 17. 提交按钮在Chrome扩展中不起作用
- 18. 如何让我的Chrome扩展程序自动滚动网页
- 19. Chrome扩展程序:如何获取表单并填写并提交
- 20. PHP - 如何限制仅来自Chrome扩展的请求?
- 21. 在扩展程序中获取来自Chrome的文本输入
- 22. 如何在我的Chrome扩展中获取其他Chrome扩展的DOM访问
- 23. 来自扩展存储过程的SQL Server捕获错误
- 24. Chrome如何创建提示对话框来安装扩展?
- 25. 提琴手没有捕获到来自Chrome的
- 26. 如果没有API提供,我如何制作Chrome扩展?
- 27. Firefox扩展。如何捕获onload事件?
- 28. 自动化谷歌Chrome扩展包装
- 29. Chrome扩展程序自动触发
- 30. Chrome扩展程序自动更新
它'不正是我需要的,但是谢谢你让我理解了互动机制 – Karazyabko
@Karaz yabko:那你究竟需要什么?我编辑了我的答案。 –
谢谢,在这里 – Karazyabko