我的Javascript在我的Google Chrome扩展程序中无效。 我之前从未使用过Google Chrome扩展程序,但我不知道如何处理此问题。我想在我的HTML中嵌入JS,但它不起作用。我们看到了计算器,但按钮可以做任何事情。即使我们输入一些数字并按回车键,数字也会被删除,没有任何反应。
这是我的HTML和JS:
首页HTML
<html>
<head>
<title>AFMO</title>
<style>
body {
min-width:200;
min-height:400;
overflow-x: hidden;
}
</style>
</head>
<body>
<a href="calculator.html">Calculator</a>
<p>
<id="Links">
<a href="calculator.html" target="_Calculator2"><img src="icon/twitter.png" width="64" height="64"/></a>
<a href="https://twitter.com/" target="_Twitter"><img src="icon/twitter.png" width="64" height="64"/></a>
<a href="https://www.facebook.com/" target="_Facebook"><img src="icon/facebook.png" width="64" height="64"/></a>
<a href="http://instagram.com/" target="_Instagram"><img src="icon/instagram.png" width="64" height="64"/></a>
<a href="http://www.youtube.com/" target="_Youtube"><img src="icon/youtube.png" width="64" height="64"/></a>
<a href="https://www.blogger.com/" target="_Blogger"><img src="icon/blogger.png" width="64" height="64"/></a>
<a href="https://vimeo.com/" target="_Vimeo"><img src="icon/vimeo.png" width="64" height="64"/></a>
</id>
</p>
</body>
</html>
链接HTML
<html>
<head>
<title>Taschenrechner</title>
<style type="text/css">
.button { width:60px; text-align:center;
font-family:System,sans-serif;
font-size:100%; }
.display { width:100%; text-align:right;
font-family:System,sans-serif;
font-size:100%; }
</style>
</head>
<body bgcolor="#FFFFE0" onload="calculator.js">
<form name="Rechner" action="" onsubmit="Ergebnis();return false;">
<table border="5" cellpadding="10" cellspacing="0">
<tr>
<td bgcolor="#C0C0C0">
<input type="text" name="Display" align="right" class="display"></td>
</tr><tr>
<td bgcolor="#E0E0E0">
<table border="0" cellpadding="0" cellspacing="2">
<tr>
<td><input type="button" width="60" class="button" value=" 7 " onclick="Hinzufuegen('7')"></td>
<td><input type="button" width="60" class="button" value=" 8 " onclick="Hinzufuegen('8')"></td>
<td><input type="button" width="60" class="button" value=" 9 " onclick="Hinzufuegen('9')"></td>
<td><input type="button" width="60" class="button" value=" + " onclick="Hinzufuegen('+')"></td>
</tr>
<tr>
<td><input type="button" width="60" class="button" value=" 4 " onclick="Hinzufuegen('4')"></td>
<td><input type="button" width="60" class="button" value=" 5 " onclick="Hinzufuegen('5')"></td>
<td><input type="button" width="60" class="button" value=" 6 " onclick="Hinzufuegen('6')"></td>
<td><input type="button" width="60" class="button" value=" - " onclick="Hinzufuegen('-')"></td>
</tr>
<tr>
<td><input type="button" width="60" class="button" value=" 1 " onclick="Hinzufuegen('1')"></td>
<td><input type="button" width="60" class="button" value=" 2 " onclick="Hinzufuegen('2')"></td>
<td><input type="button" width="60" class="button" value=" 3 " onclick="Hinzufuegen('3')"></td>
<td><input type="button" width="60" class="button" value=" * " onclick="Hinzufuegen('*')"></td>
</tr>
<tr>
<td><input type="button" width="60" class="button" value=" 0 " onclick="Hinzufuegen('0')"></td>
<td><input type="button" width="60" class="button" value=" . " onclick="Hinzufuegen('.')"></td>
<td><input type="button" width="60" class="button" value=" = " onclick="Ergebnis()"></td>
<td><input type="button" width="60" class="button" value=" / " onclick="Hinzufuegen('/')"></td>
</tr>
<tr>
<td><input type="button" width="60" class="button" value="sqrt " onclick="Sonderfunktion('sqrt')"></td>
<td><input type="button" width="60" class="button" value=" pow " onclick="Sonderfunktion('pow')"></td>
<td><input type="button" width="60" class="button" value=" ln " onclick="Sonderfunktion('ln')"></td>
<td><input type="reset" width="60" class="button" value=" C "></td>
</tr>
</table>
</td></tr></table>
</form>
</body>
</html>
JS
function Check (Eingabe) {
var nur_das = "0123456789[]()-+*%/.";
for (var i = 0; i < Eingabe.length; i++)
if (nur_das.indexOf(Eingabe.charAt(i)) < 0)
return false;
return true;
}
function Ergebnis () {
var x = 0;
if (Check(window.document.Rechner.Display.value))
x = eval(window.document.Rechner.Display.value);
window.document.Rechner.Display.value = x;
}
function Hinzufuegen (Zeichen) {
window.document.Rechner.Display.value = window.document.Rechner.Display.value + Zeichen;
}
function Sonderfunktion (Funktion) {
if (Check(window.document.Rechner.Display.value)) {
if (Funktion == "sqrt") {
var x = 0;
x = eval(window.document.Rechner.Display.value);
window.document.Rechner.Display.value = Math.sqrt(x);
}
if (Funktion == "pow") {
var x = 0;
x = eval(window.document.Rechner.Display.value);
window.document.Rechner.Display.value = x * x;
}
if (Funktion == "ln") {
var x = 0;
x = eval(window.document.Rechner.Display.value);
window.document.Rechner.Display.value = Math.log(x);
}
} else
window.document.Rechner.Display.value = 0}
更多信息: 这是我们自己的Chrome应用。我们刚刚复制了计算器,但我们不会发布这个应用程序,所以我想这没关系。
EDIT 当我按下计算器上的任何数字时,这会出现在控制台中。 拒绝执行内联事件处理程序,因为它违反了以下&#34;&#34; SEE BELOW&#34;&#34;内容安全政策指令:&#34; script-src&#39; self&#39;铬扩展资源:&#34 ;. “不安全 - 内联”和“不安全”。关键字,哈希(&#39; sha256 -...&#39;)或nonce(&#39; nonce -...&#39;)是启用内联执行所必需的。 我已经尝试解决这个问题,甚至找不到任何内联脚本。
&#34;&#34;见下文&#34;&#34;
这里是按钮的线。如果我按7,第25行出现错误,如果我在39中按3错误。我想我必须把所有
<td><input type="button" width="60" class="button" value=" 4 " onclick="Hinzufuegen('4')"></td>
在一个额外的js,但我真的不知道如何做到这一点
答案 0 :(得分:0)
您的<script>
代码在哪里?
它应该是这样的:
<script src="yourJSFile.js"></script>
答案 1 :(得分:0)
您需要在头部
中添加脚本标记<head>
<script type="text/javascript" language="javascript" src="jsfilehere.js"></script>
</head>