簡體   English   中英

Google Chrome擴展程序的選項頁中的Javascript不起作用

[英]Javascript is not working in the options page of the Google Chrome extension

我正在為Google Chrome開發擴展程序。 但是我在使用localStorage時遇到了麻煩,並且無法正常運行javascript。

請參見下面的代碼:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html lang="pt-br">
    <head>
        <script type="text/javascript">
            function ShowAlert() {
                alert("This is a alert!");
            }
        </script>
    </head><body>
        <script>
            ShowAlert();
        </script>
    </body>
</html>

經過測試,這是一個顯示消息的簡單代碼,它可以正常工作。 但是,當我以擴展程序的選項頁訪問時,該消息將不會出現。

清單中應該缺少任何許可才能起作用嗎?

您無法執行內聯腳本,這是內容安全策略

內聯JavaScript將不會執行。
此限制禁止內聯塊和內聯事件處理程序(例如<button onclick =“ ...”>)。

該限制使您無法意外執行惡意第三方提供的腳本,從而消除了一大堆跨站點腳本攻擊。 但是,它確實要求您編寫代碼時必須將內容和行為區分開。

更改您的代碼,如下所示:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html lang="pt-br">
    <head>
        <script src="alerter.js"></script>
    </head>
    <body>
    </body>
</html>

和alerter.js中的單獨代碼

function ShowAlert() {
    alert("This is a alert!");
}
ShowAlert();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM