ユーザーが自分のデータベースに格納されているURLにアクセスすると、DIV containsメッセージを作成します。実際には、警告メッセージで動作しますが、DIVが必要なので、contentscript.jsでページのDOMにアクセスして作業する必要がありますが、contentscript.jsの機能が動作しないようにするにはどうすればいいですか? background.jsのURLをチェックしました!Chrome拡張機能:background.jsのcontentscript.jsの関数を呼び出す
私はタブについて読んでいますが、ユーザーがブラウザのアクションアイコンをクリックしたときにのみ実行されます。私の状況では、ユーザーはwwwでブラウズしているアイコンをクリックしませんでした。
contentscript.js
chrome.runtime.sendMessage(window.location.href);
var pathname = window.location.pathname; // Returns path only
var url = window.location.href;
//document.getElementsByTagName('title')[0].innerText
function MessageBox(){
document.documentElement.style.height = '100%';
document.body.style.height = '100%';
document.documentElement.style.width = '100%';
document.body.style.width = '100%';
var div = document.createElement('div');
var btnForm = document.createElement('form');
var btn = document.createElement('input');
//append all elements
document.body.appendChild(div);
div.appendChild(btnForm);
btnForm.appendChild(btn);
//set attributes for div
div.id = 'myDivId';
div.style.position = 'fixed';
div.style.top = '80%';
div.style.left = '77%';
div.style.width = '22%';
div.style.height = '17%';
div.style.backgroundColor = 'white';
div.style.border='1px solid red';
//set attributes for btnForm
btnForm.action = '';
//set attributes for btn
//"btn.removeAttribute('style');
btn.type = 'button';
btn.value = 'X';
btn.style.position = 'reltive';
btn.style.top = '10%';
btn.style.left = '80%';
btn.style.width = '5%';
btn.style.height = '3%';
}
background.js
chrome.runtime.onMessage.addListener(function(response, sender, sendResponse) {
$.ajax({
type: 'GET',
url: 'http://mywebsite.com/api/route',
dataType: 'json',
}).success(function(results) {
for (var i = 0; i < results.length; i++) {
if (results[i].url === response) {
alert("This page in my database"); // this work but I don't want an alert message
} //if
} //for
});
});
ありがとうございました – Seham