I am looking to add a disable button in the popup window of my chrome extension that will have it pause functionality like the Adblock extension does. This would remain paused in all tabs until the button is clicked to re-enable it. I have the following code in place, however, the button and functionality don't currently work.
Popup.js file:
function disableButton() {
var disableButton = document.getElementById("disableButton");
var isExtensionOn = true;
if (disableButton.innerHTML == "Disable") {
isExtensionOn = false;
} else if (disableButton.innerHTML == "Enable") {
isExtensionOn = true;
} else {
alert("Error");
}
}
document.addEventListener('DOMContentLoaded', function () {
var singleButton = document.getElementById("singleButton");
var br1 = document.getElementById("br1");
var br2 = document.getElementById("br2");
//Sends message to event.js (background script) telling it to disable the
chrome.extension.sendMessage({ cmd: "setOnOffState", data: {value: isExtensionOn} });
chrome.extension.sendMessage({ cmd: "getOnOffState"}, function(response){
console.log(response);
if (response == true){
disableButton.innerHTML = "Disable";
disableButton.className = "button button3"
disableButton.style.display = "";
br1.style.display = "";
br2.style.display = "";
}
if (response == false){
disableButton.innerHTML = "Enable";
disableButton.className = "button button1"
disableButton.style.display = "";
br1.style.display = "";
br2.style.display = "";
}
});
There is more code below this, but it is functioning code that cannot be shared out.
Popup.html:
<button class="button button1" id="disableButton" style="display:none">Error</button>
<br id="br1" style="display:none">
<br id="br2" style="display:none">
Background.js:
var isExtensionOn = true;
chrome.runtime.onMessage.addListener(
function(request, sender, sendResponse){
if (request.cmd == "setOnOffState") {
isExtensionOn = request.data.value;
}
if (request.cmd == "getOnOffState") {
sendResponse(isExtensionOn);
}
});
Any help on this is greatly appreciated!