0

我只想在动态创建的 DIV 的内容(包括文本和图像)完全加载后执行一些功能。这里动态创建的DIV是“#element”+data。

以下不起作用。

$("#section"+currSect).delegate( "#element"+data, "load", function()
{ remvPanel(); showFormBox(); }
);

这也行不通。

 $("#element"+data).load(function() {remvPanel(); showFormBox();});

请帮忙!:(

4

1 回答 1

0

这会做吗?

jQuery .load()

此方法是 .bind('load', handler) 的快捷方式。

当元素和所有子元素都已完全加载时,加载事件将发送到该元素。此事件可以发送到与 URL 关联的任何元素:图像、脚本、框架、iframe 和窗口对象。

例如,考虑一个带有简单图像的页面:

<img src="book.png" alt="Book" id="book" />

事件处理程序可以绑定到图像:

$('#book').load(function() {
  // Handler for .load() called.
});

一个工作示例:

<head>
    <title></title>
    <script src="Scripts/jquery-1.8.2.js" type="text/javascript"></script>
    <script type="text/javascript">
        $(function () {
            $div = $("#main");

            // get loaded alert
            $img = $("<img src='https://www.google.com/images/srpr/logo3w.png' />");

            // no loaded alert
            // $img = $("<img src='not a valid image' />");

            $img.load(function () {
                alert("loaded");
            });

            $div.append($img);
        });
    </script>
</head>
<body>
    <div id="main">
    </div>
</body>
于 2012-10-23T13:11:09.010 回答