【发布时间】:2014-06-17 18:42:51
【问题描述】:
我敢肯定,有些人可能会告诉我只使用 Stylebot 来更改页面的 CSS 而不是制作我自己的扩展程序,但是 Stylebot 太过分了,因此对于我想做的事情来说太笨重了。每次按Ctrl + M时,我只想将左边距加宽100px。
我认为我有两个关键问题:
- 从文档中(对我来说)如何更改 a 边距(而不是设置一个,尽管我尝试这样做 也失败了)。目前还不清楚jquery之类的东西如何 在 this answer 中可以适合 this example 在文档中提供的模板(是的,我已经用 jquery 尝试过 包括作为背景脚本)。
- 我感觉也许我应该使用
tabchrome.browserAction.onClicked.addListener(function(tab)但无法从文档中确定如何确定。
这是我尝试过的许多方法的一个版本(在 background.js 中),使用上面链接的 SO 答案中的代码:
chrome.commands.onCommand.addListener(function(command) {
if (command == "Ctrl+M") {
chrome.tabs.executeScript({code: "$('body').css('margin-left', function(index, curValue) {return parseInt(curValue, 10) + 100 + 'px'}"
});
}
});
如果出现问题,这里是清单:
{
"name": "MarginAdjust",
"description": "Widen margins of websites with Ctrl+M, narrow them with Ctrl+B.",
"version": "0.1",
"manifest_version": 2,
"permissions": [
"activeTab"
],
"background": {
"scripts": ["background.js"],
"persistent": false
},
"commands": {
"widen_margin": {
"suggested_key": {
"default": "Ctrl+M",
"mac": "Command+M"
},
"description": "Widens margin."
}
}
}
感谢您的指导。我什至查看了 Stylebot 源代码,试图了解他们是如何做到的,但无法弄清楚。
编辑:可能是因为我需要一个 content_script 来修改页面,但显然是chrome.commands doesn't work with content_scripts?
【问题讨论】:
标签: jquery json google-chrome-extension