我写了一个.html文件来测试从另一个文件导入内容。文件结构如下所示:
测试(是一个文件夹)
ㄴasdf.html
ㄴlib(是一个文件夹)
---ㄴsjcl.js
asdf.html看起来像这样:
<!DOCTYPE html>
<html>
<head>
<title>form test</title>
<script type="text/javascript" src="lib/sjcl.js"></script>
</head>
<body>
<form action="" method="POST" onsubmit="sjcl.hash.sha512.hash(document.getElementsByName('normaltext')[0].value);">
<p>input password.<br></p>
<input type="text" name="normaltext" value="">
<input type="submit" value="submit">
</form>
</body>
</html>
至于sjcl.js,我将这里的内容(http://bitwiseshiftleft.github.io/sjcl/sjcl.js)复制粘贴到了lib / sjcl.js文件中。
当我在Firefox上打开asdf.html时,在文本框中键入内容并单击“提交”,即使sjcl.js文件中已明确定义,控制台也会显示“ sjcl.hash.sha512未定义”。
我倾向于认为这不是sjcl.js的问题,而是我弄得一团糟。
如何确保将提交的sha512哈希值打印在控制台上?
最佳答案
您正在使用的sjcl库的特定版本没有sha512的代码。
似乎开发人员尚未更新已编译的程序包以匹配当前的源代码。您需要自己下载和编译存储库,或使用其他库才能使用该功能。您也可以提交issue来鼓励开发人员更新编译的库。
关于javascript - 在html中导入脚本:sjcl.hash.sha512未定义,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55095422/