Extension中onclick或內聯腳本不起作用
問題:
在擴充中,onClick函數無法執行其預期功能,儘管在普通瀏覽器中它可以正常工作。
程式碼範例:
function hellYeah(text) { document.getElementById("text-holder").innerHTML = text; }
<!doctype html> <html> <head> <title>Getting Started Extension's Popup</title> <script src="popup.js"></script> </head> <body> <div>
當使用者點選「hyhy」時,「ha」應該改為「xxx」,但擴充在其中卻不起作用。
答案:
Chrome擴充與Firefox WebExtensions不允許使用內聯JavaScript。因此,需要使用其他方法來綁定事件。
一種方法是給連結分配一個ID(例如,),並在popup.js檔案中使用addEventListener綁定事件:
document.addEventListener('DOMContentLoaded', function() { var link = document.getElementById('link'); // 点击逻辑如下: link.addEventListener('click', function() { hellYeah('xxx'); }); });
確保popup.js作為單獨的腳本檔案被載入:
<script src="popup.js"></script>
以上是為什麼我的內聯 onclick 函數在 Chrome/Firefox 擴充功能中不起作用?的詳細內容。更多資訊請關注PHP中文網其他相關文章!