我编写了以下代码来创建用于在codechef网站上显示竞赛的chrome扩展程序。 www.codechef.com/contests
<html>
<head>
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script type="text/javascript">
function fetchPage(url) {
$.ajax({
type: "GET",
url: url,
error: function(request, status) {
alert('Error fetching ' + url);
},
success: function(data) {
var textstring = "";
var $divelem = $("div.table-questions",$(data));
var $headers = $("h3",$(data));
var contsite = $divelem.size();
for(i = 0;i < contsite;i++)
{
var ob = $divelem.eq(i);
var tr = $('tr',ob);
var trsize = tr.size();
textstring += "<b>"+$headers.eq(i).html()+"</b><br>";
for(j = 1;j < Math.min(10,trsize);j++)
{
var td = $('td',tr[j]);
var tdsize = td.size();
for(k = 0;k < tdsize;k++)
{
textstring += "\t"+td.eq(k).html()
}
textstring += "<br>";
}
}
var element = document.createElement("div");
element.innerHTML = textstring;
document.body.appendChild(element);
}
});
}
document.addEventListener('DOMContentLoaded', function()
{
fetchPage("http://www.codechef.com/contests");
});
</script>
</head>
<body>
</body>
</html>
我已将浏览器上的代码作为网页运行。它工作正常,但作为扩展运行时,它没有显示任何东西。我在网上找不到任何能解决这个问题的东西。 manifest.json文件如下:
{
"manifest_version": 2,
"name": "Codechef Plugin",
"description": "This extension demonstrates a codechef event.",
"version": "1.0",
"browser_action": {
"default_icon": "icon.png",
"default_popup": "main.html"
}
}