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) のショートカットです。

load イベントは、要素とすべてのサブ要素が完全に読み込まれると、要素に送信されます。このイベントは、URL に関連付けられた任意の要素 (画像、スクリプト、フレーム、iframe、および window オブジェクト) に送信できます。

たとえば、単純な画像を含むページを考えてみましょう:

<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 に答える