mainscript.js
/*
*
*
*
*
*/
var injectJs=chrome.extension.getURL("scripts/injectscript.js");
var livequeryJS=chrome.extension.getURL("scripts/jquery.livequery.min.js");
var script = document.createElement("script");
script.setAttribute("type", "text/javascript");
script.setAttribute("src", injectJs);
document.querySelector('head').appendChild(script);
var loadstr=document.body.getAttribute("onLoad");
document.body.setAttribute("onLoad", loadstr+" initYAPF5simylator();");
//== Livequery в 1.2.6 нету live =(
script = document.createElement("script");
script.setAttribute("type", "text/javascript");
script.setAttribute("src", livequeryJS);
document.querySelector('head').appendChild(script);
//== favicon
var iconnew=chrome.extension.getURL("icons/icon_new.ico");
window.addEventListener("message", function(e) {
if (event.source != window) return;
if (event.data.type && (event.data.type == "loadUpdatePost")) {
var xhr = new XMLHttpRequest();
xhr.open("GET", event.data.url, true);
xhr.params=event.data; //-- запоминаем принятые данные, что бы потом их передать
xhr.onreadystatechange = function(){
if (xhr.readyState == 4) { //TODO: обработать другие статусы
window.postMessage({ type: "showUpdatePost", favicon: iconnew, updtPost: xhr.responseText, params: xhr.params }, "*");
}
}
}
xhr.send();
}, false);
Добавлено в 20:35 manifest,json
{
"manifest_version": 2,
"name": "YAPF5Simylator",
"version": "1.0",
"description": "Автообновление постов на yaplakal.com",
"icons": {
"16": "icons/icon_16.png",
"32": "icons/icon_32.png",
"48": "icons/icon_48.png",
"128": "icons/icon_128.png"
},
"content_scripts": [
{
"matches": ["http://www.yaplakal.com/*"],
"css": ["styles.css"],
"run_at": "document_end",
"js": ["scripts/mainscript.js"]
}
],
"web_accessible_resources": [
"scripts/injectscript.js",
"scripts/jquery.livequery.min.js",
"scripts/jquery.scrollto.min.js",
"icons/icon_new.ico"
],
"permissions": [
"tabs", "http://www.yaplakal.com/*"
]
}