由于无法使用 getExif,我该如何在 Javascript 文件中引用 exif.js?

How would I reference exif.js in a Javascript file as I can't use getExif?

我正在尝试在我的 HTML 页面上使用 exif.js,但我认为我没有正确引用 exif.js 文件,因为 window.onload = getExif returns 一个错误说它是未定义的。

我尝试将 <script src="exif.js type="text/javascript"></script> 添加到我的 HTML 文件中,并使用 <script src="myscript.js" type="text/javascript"></script> 引用我的其他文件。好像还是不行。

HTML:

<html>
    <head>
        <script src="exif.js" type="text/javascript"></script>
        <script src="myscript.js" type="text/javascript"></script>
    </head>
    <body>
        <img src="myimage.png" alt="" id="image">
        <div>
            <span id="metadata"></span>
        </div>
    </body>
</html>

Javascript:

window.onload = getExif;

img = document.getElementById("image")
EXIF.getData(img, function() {
        var allMetaData = EXIF.pretty(this);
        var allMetaDataSpan = document.getElementById("metadata");
        allMetaDataSpan.innerHTML = JSON.stringify(allMetaData,null, "\t");
});

我得到的错误是 Uncaught ReferenceError: getExif is not defined。我不确定我是否做错了什么,因为一切对我来说都很好。任何帮助将不胜感激。

您没有定义名为 getExif 的函数。它不是由 exif.js 导出或定义的特殊内容,而只是他们在文档示例中遵循的模式。我想你想要的是:

window.onload = getExif;

function getExif() {
    var img = document.getElementById("image");
    EXIF.getData(img, function() {
        var allMetaData = EXIF.pretty(this);
        var allMetaDataSpan = document.getElementById("metadata");
        allMetaDataSpan.innerHTML = JSON.stringify(allMetaData,null, "\t");
    });
}