Javascript 在AJAX加载图像后,如何获取EXIF数据?

Javascript 在AJAX加载图像后,如何获取EXIF数据?,javascript,jquery,ajax,exif,Javascript,Jquery,Ajax,Exif,我正在为NapaWapa.com开发一款可刷卡的葡萄酒图像查看器,它运行得非常好: 我正在使用jquery插件读取库中图像的exif数据。然而,该插件似乎只在src属性是硬编码的情况下工作——而不是在通过AJAX加载图像的情况下。你们中的任何一位专家都可以浏览一下JS(),看看是否可以建议对插件代码进行更改以推荐修复 以下是插件代码的特定部分,用于读取EXIF数据: // HTML IMG EXAMPLE <img class="lazyOwl" data-src="images/03.j

我正在为NapaWapa.com开发一款可刷卡的葡萄酒图像查看器,它运行得非常好:

我正在使用jquery插件读取库中图像的exif数据。然而,该插件似乎只在src属性是硬编码的情况下工作——而不是在通过AJAX加载图像的情况下。你们中的任何一位专家都可以浏览一下JS(),看看是否可以建议对插件代码进行更改以推荐修复

以下是插件代码的特定部分,用于读取EXIF数据:

// HTML IMG EXAMPLE
<img class="lazyOwl" data-src="images/03.jpg" exif="true" />

// JAVASCRIPT CLICK TO TEST IMG EXIF DATA
$("img").on('click', function(event){
    $(this).exifLoad();
    console.log( "HIT: " + $(this).exif('Make') );
});


// JQUERY PLUGIN CODE EXCERPT
function loadAllImages()
{
    var aImages = document.getElementsByTagName("img");
    for (var i=0;i<aImages.length;i++) {
        if (aImages[i].getAttribute("exif") == "true") {
            if (!aImages[i].complete) {
                addEvent(aImages[i], "load",
                    function() {
                        EXIF.getData(this);
                    }
                );
            } else {
                EXIF.getData(aImages[i]);
            }
        }
    }
}

// automatically load exif data for all images with exif=true when doc is ready
jQuery(document).ready(loadAllImages);

// load data for images manually
jQuery.fn.exifLoad = function(fncCallback) {
    return this.each(function() {
        EXIF.getData(this, fncCallback)
    });
}
//HTML IMG示例
//JAVASCRIPT单击以测试IMG EXIF数据
$(“img”)。在('click',函数(事件){
$(this.exifLoad();
log(“HIT:+$(this.exif('Make'));
});
//JQUERY插件代码摘录
函数loadAllImages()
{
var aImages=document.getElementsByTagName(“img”);

对于(var i=0;i我正在搜索一个类似的问题,并从中找到了帮助。请尝试修改Javascript(而不是插件)以包含以下代码:

$("img").load(function() {
  $(this).exifLoad(function() {
    // exif data should now be ready...
  });
});

我正在搜索一个类似的问题,并从中找到了帮助。请尝试修改您的Javascript(而不是插件)以包含以下代码:

$("img").load(function() {
  $(this).exifLoad(function() {
    // exif data should now be ready...
  });
});

嗯…好主意。试过了,但仍然不起作用。我认为这与exif尝试在页面加载时读取与在图像加载时读取有关。就像我需要在每个图像加载后重新初始化exif函数一样。嗯…好主意。试过了,但仍然不起作用。我认为这与exif尝试继续读取有关页面加载与图像加载。就像我需要在每个图像加载后重新初始化exif函数一样。