javascript - 添加图像前缀未出现

标签 javascript jquery prepend

我是 Javascript/jQUERY 的新手。 我使用 load() 从 url 加载 div 。然后我想在 span 的左侧插入图像。 我正在使用前置,但图像未加载。当我从控制台运行代码时,图像正在正确加载。

$(document).ready(function() {


    var $div1 = $("<div></div>")
    var $div2 = $("<div></div>")
    $div1.attr("id", "div1");
    $div2.attr("id", "div2");

    $("#a_30").append($div1);
    $("#a_30").append($div2);

    var $posts = $('a.entry_title').map(function() {
        return $(this).attr('href');
    });

    var id1 = $posts[0].substring($posts[0].lastIndexOf('_') + 1);
    var id2 = $posts[1].substring($posts[1].lastIndexOf('_') + 1);

    var posts = ["url/open/" + id1, "url/open/" + id2]
    $('#div1').load(posts[0] + " .shadow3");
    $('#div2').load(posts[1] + " .shadow3");

    $('#div1').find('.entry_').prepend('<img id="MsgIcon" src="/email.gif" />');
    $('#div2').find('.entry_').prepend('<img id="MsgIcon" src="/email.gif" />');

});

最佳答案

因为load()是异步的,所以下一条语句会在数据加载之前执行。您必须使用 load 的完整回调,如下所示。

$('#div1').load(posts[0] + " .shadow3", function() {
    $('#div1').find('.entry_').prepend('<img id="MsgIcon" src="/email.gif" />');
});

$('#div2').load(posts[1] + " .shadow3", function() {
    $('#div2').find('.entry_').prepend('<img id="MsgIcon" src="/email.gif" />');
});

关于javascript - 添加图像前缀未出现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31310850/

相关文章:

javascript - CSS垂直居中

javascript - 使用 canvas2svg.js 将 chart.js 图表导出为 svg

javascript - 如何在 Chrome 应用程序开发中枚举已连接的 USB 和 Wi-Fi 设备

forms - 在 Angular 2 中添加表单字段响应

ruby-on-rails - 不能在前置模块中使用实例变量

javascript - 如何将图像URI转换为字节Expo

javascript - 如何从google脚本url返回json

javascript - 根据整个路径轨迹的百分比在路径轨迹上移动 SVG 组

php - 如何获取html的属性到jquery

php - error_log 与包含文件在同一目录中?