I'm very new to chrome extension development.. I got basic idea from google's tutorial and some help from this question here is what i have done so far
background.html
<html>
<head>
<script>
chrome.browserAction.onClicked.addListener(function(tab) {
chrome.tabs.executeScript(null,
{file:"http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.3/themes/ui-lightness/jquery-ui.css",
runAt:"document_start"},
function() { alert('Added css'); });
chrome.tabs.executeScript(null,
{file:"http://ajax.googleapis.com/ajax/libs/jquery/1.8.1/jquery.min.js",
runAt:"document_start"},
function () {
alert("loaded js");
chrome.tabs.executeScript(null,
{file:"http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.23/jquery-ui.min.js"},
function () {
alert("loaded js2");
chrome.tabs.executeScript(null, {file:"popup.js"}, function() {alert("did it pop up yet?");});
});
});
});
</script>
</head>
</html>
Manifest.json file
{
"name": "demo",
"version": "2.0",
"description": "Jquery Dialog in Chrome",
"browser_action": {
"default_icon": "favicon.ico",
"default_title": "Dialog Box"
},
"background_page": "background.html",
"content_scripts": [
{
"matches": ["http://*/*","http://jquery.com/*"],
"js": ["jquery.js","popup.js"]
}
],
"permissions": [
"tabs","http://localhost/","http://*/*"
]
}
And popup.js file where my ui dialog is
$(function() {
alert('in popup');
var NewDialog = $('<div id="MenuDialog"><p>This is your dialog content, which can be multiline and dynamic.</p></div>');
NewDialog.dialog({
modal: true,
title: "title",
show: 'clip',
hide: 'clip',
buttons: [
{text: "Submit", click: function() {doSomething()}},
{text: "Cancel", click: function() {$(this).dialog("close")}}
]
});
NewDialog.dialog("open");
});
I'm getting the alerts from the background.html but not from popup.js, jquery ui Dialog also not appears. I tried to debug it
I opened gmail and clicked on extension console is showing 4 errors >
Error during tabs.executeScript: Cannot access contents of url "https://mail.google.com/mail/u/0/?shva=1#inbox". Extension manifest must request permission to access this host.