jquery在动态创建图像时加载事件

时间:2011-11-03 07:40:47

标签: jquery

我正在使用加载事件将一页的内容退回到另一页。在主页的内容下面

<div class="header"></div>
<div class="content" id="container">
    <div class="sub_nav" id="sub_nav">
        <div class="sub_dyn">
            <img id="menu_project_tool" src="images/menu-btn.png" />
        </div>
    </div>
    <div class="vs-context-menu nav" id="nav"></div>

    <div class="clearfix">
        <div class="clearfix_bot">
            <div class="main_sidebar"></div>
            <div class="right_sidebar"></div>
        </div>
    </div>
    <div class="overlay" id="overlay"></div>
    <div class="popup" id="popup"></div>
</div>
<div class="footer"></div>

这是我在主页上使用的脚本

window.onload = function(){
    $("div.header").load("header.html");
    $("div.main_sidebar").append('<div class="project_steps"></div>');
    $("div.main_sidebar").append('<div class="project_subset_criterion"></div>');
    $("div.right_sidebar").append('<div class="project_subset_criterion_accordion"></div>');
    $("div.project_steps").load("temp/project_steps.html");
    $("div.project_subset_criterion").load("temp/project_subset_criterion.html");
    $("div.project_subset_criterion_accordion").load("temp/project_subset_criterion_accordion.html");
    $("div.footer").load("footer.html");

    Create_Image('<img />','new_sc_tool','images/icons/NewStarburst.gif','New Subset Criterion');

}


$(document).ready(function(){

    Create_Image = function(Type,Id,Src,Title){
                        $(Type, {id:Id, src:Src, title:Title}).appendTo("#toolbar_subset_criterion");
                   }

});

我已调用“Create_Image”函数在第二页上创建动态图像,但它无法正常工作。但是我在上面的函数中添加了警告框来检查函数是否被调用,在哪个条件图像被创建但是重新创建了警报框图像没有被创建。这是我动态创建图像的第二页内容

<div class="heading_subset_criterion">
    <img id="scimg_arrow_down" src="images/arrow_down.png" />&nbsp;&nbsp;
    <b>Project Subset Criterion</b>
</div>

<div class="toolbar_subset_criterion" id="toolbar_subset_criterion"></div>

<div class="content_subset_criterion"></div>

让我知道完成上述活动

1 个答案:

答案 0 :(得分:0)

如果我理解正确,你是使用ajax加载第二页并将其注入主页然后你想在注入的html中添加img元素,是吗?在这种情况下,问题是当您尝试添加img时尚未加载html。而不是使用document.ready事件,向ajax-call添加成功处理程序。

假设标题中有#toolbar_subset_criterion,则应该这样做:

$("div.header").load("header.html", function() {
    Create_Image('<img />','new_sc_tool','images/icons/NewStarburst.gif','New Subset Criterion');
});