2011-07-20 5 views
0

イメージをループにプリロードしようとしていますが、それはうまくいきますが、各イメージを別のタグでラップする方法です。このコードを実行することはできません。これまでのところ問題は見られません。ラップvar img =タグ付きの新しいイメージ

... 
var img = new Image(); 
$(img).load(function(){ 
$(this).hide();   
$('.container').append('<a href="/">'+this+'</a>');              $(this).fadeIn();          
}); 
... 
+1

'this'は文字列ではありません。 –

答えて

1

を使用することができます。

良い解決策をすることができます:

// Inside the callback 
$('<a href="/"></a>').append(this).appendTo('.container'); 

あなたが.wrapを使用している場合、それは元の要素ではなく、ラッパーを返すことを忘れないでください!

+0

それは完璧な意味があります、ありがとう!うまく動作します。 – devjs11

3

あなたはこれよりもむしろ$(これ)を使ってみましたか?

か、なぜあなたが使用していけない:

var $html = $(this).wrap('<a href="/" />'); 
    $('.container').append($html); 
+1

また、なぜイメージを隠していますか?それがそこにあるかどうかを見るためにあなたのソースを見ましたが、表示はありませんか? – TommyBs

+0

申し訳ありませんが、あなたの解決策はまだ動作しませんでした。私はそれを前にやってしまいました。ただオブジェクトを返すか、まったくラップしません...私は今、pier-paolo-ramonのソリューションをチェックしています。 – devjs11

0

それは、「これは」...あなたはこの段階で画像/ wの他の更なる操作を行っていない場合は、それはあなたがこれを行うことは可能である/ wが何をするかわからない:

... 
$('.container').append('<a href="/"><img id=' + anIdOfYourChoosing + ' /></a>'); 
... 

あなたは事実の後で画像のプロパティを遡及的に設定するだけです。