6

読み込み後にページに画像を動的に追加してからユーザー操作を行い、その画像が完全に読み込まれた後に関数を起動する際に問題が発生しています。jQueryの.load()メソッドを使用しても問題ないと思いました..しかし、私のコンソールと一連の文書化.logビジネスによると、それは決して実行されませんでした. 以下を参照してください..ありがとう!

$('body')
    .append('<img id="ad" src="img/ad.jpg" alt="Advertising Network" />')
    .load(function(){
        console.log('ad load complete');
        $('#submit').click();
    });

アップデート:

明確にするために、これはロードdocumentwindowロードの両方の後です。

4

2 に答える 2

15

あなたのコードでは、連鎖.load()のために関連しています。body

コードを次のように変更します。

var img = $('<img id="ad" src="img/ad.jpg" alt="Advertising Network" />');
img.load(function(){
    console.log('ad load complete');
    $('#submit').click();
});

$('body').append(img);

動作するはずです(http://jsfiddle.net/zerkms/f7epb/

于 2012-05-28T20:48:49.670 に答える
0

append 関数は、追加された要素ではなく、含まれている要素を返すため、関数を img ではなく body の負荷にバインドしています。

次のように、appendTo を使用することをお勧めします。

$('<img id="ad" src="img/ad.jpg" alt="Advertising Network" />')
.load(function(){
    console.log('ad load complete');
    $('#submit').click();
})
.appendTo($('body'));
于 2012-05-28T20:54:50.417 に答える