如何使GoogleChrome扩展运行jQuery脚本
我有这个jquery脚本:如何使GoogleChrome扩展运行jQuery脚本,jquery,google-chrome-extension,Jquery,Google Chrome Extension,我有这个jquery脚本: $('[id^=changesetList] tr').each(function () { var sid = $(this).attr('sid'); $(this).find('td span.changesetDescription').append('<span class="csetHash">' + sid + '</span>').css('color','#777'); }); 我包括jq
$('[id^=changesetList] tr').each(function () {
var sid = $(this).attr('sid');
$(this).find('td span.changesetDescription').append('<span class="csetHash">' + sid + '</span>').css('color','#777');
});
我包括jquery.js
文件(版本1.4.2)和bg.html
文件:
{
"name": "Kiln Hash",
"version": "1.0.1",
"description": "Show hash in changeset list in Kiln",
"content_scripts": [
{
"matches": ["https://*.kilnhg.com/*"],
"js": ["jquery.js"]
}
],
"background_page": "bg.html"
}
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<script src="jquery.js"></script>
<script>
$(document).ready(function(){
$(hash_link).click(function(){
addHash();
return false;
});
});
function addHash()
{
$('[id^=changesetList] tr').each(function () {
var sid = $(this).attr('sid');
$(this).find('td span.changesetDescription').append('<span class="csetHash">' + sid + '</span>').css('color','#777');
});
}
</script>
<title>Untitled Document</title>
</head>
<body>
<a id="hash_link" href="#">Add Hash</a>
</body>
</html>
$(文档).ready(函数(){
$(哈希链接)。单击(函数(){
addHash();
返回false;
});
});
函数addHash()
{
$('[id^=changesetList]tr')。每个(函数(){
var sid=$(this.attr('sid');
$(this).find('td span.changesetDescription')。append(''+sid+'').css('color','#777');
});
}
无标题文件
我将其打包在一个扩展名为.crx的zip中,当我将文件拖到Chrome中时,它会问我是否要安装,我说是的。然后它告诉我“坏魔法数字”
所以我去Chrome开发者的仪表板上传zip,它接受它,让我付5美元上传,然后安装。但它仍然没有任何作用。您不仅可能需要清单,清单是任何扩展中绝对必要的一部分。我不想这么说,但您可能需要先多读一点关于扩展结构的内容,您所有的问题都会得到回答
- (扩展中的内容和清单)
- (如何使用jquery将脚本包含到特定域中)
chrome://extensions/
,单击“开发人员模式”、“加载未打包的扩展”按钮,然后将其指向您的扩展文件夹
如果您想将脚本注入某个页面,则需要使用所谓的“内容脚本”。您的清单应如下所示:
{
"name": "Kiln Hash",
"version": "1.0.1",
"description": "Show hash in changeset list in Kiln",
"content_scripts": [
{
"matches": ["https://*.kilnhg.com/*"],
"js": ["jquery.js", "content_script.js"]
}
]
}
content\u script.js:
$('[id^=changesetList] tr').each(function () {
var sid = $(this).attr('sid');
$(this).find('td span.changesetDescription').append('<span class="csetHash">' + sid + '</span>').css('color','#777');
});
$('[id^=changesetList]tr')。每个(函数(){
var sid=$(this.attr('sid');
$(this).find('td span.changesetDescription')。append(''+sid+'').css('color','#777');
});
加载DOM并注入jquery后,此内容脚本将在指定域上运行
你不需要一个背景页 我读了那些东西,还是没法用。请参阅我的更新。我知道这是一个迟到的注释,但是清单中还需要一个
“manifest\u version”:2