2011-12-08 11 views
20

私はこれをうまくやってみました。設定イメージsrc属性がChromeで動作しない

私はsrc 1の画像を取得し、別のsrcだとして#btnが押されたときに、それを設定したい:

jQuery("#btn").live("click", function() { 
    jQuery("#another_div") 
     .children("img") 
     .attr("src", jQuery(this).prev("img").attr("src")); 
    jQuery(this) 
     .prev("img") 
     .attr("src",""); 
}) 

は、私も試してみました:

jQuery(this).prev('img').removeAttr("src"); 

をそれは、Firefox、IE7で正常に動作します-9、およびSafari

Chromeでのみ、ソースが変更されても画像が削除されません(src="")。

+1

[OK]を、今では一年以上されて、これはまだ私は同じくらい私はIEを憎むようChromeを憎む大きなissue..godでいます。 – vsync

答えて

29

あなたは多分

jQuery(this).attr("src", "data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="); 

にそれを変更することができ、ブランク

$(this).attr("src",""); 

に最初のSRCを設定しようと?

+0

こんにちはJoseph、これはあなたがこれを行うときに動作するようです。あなたはこれがsrc値のために何を入れているのか説明できますか? http:// jsfiddleを参照してください。net/K7SBx/1/ –

+6

いいです。これは、1px x 1px透過GIF画像のbase64でエンコードされた文字列です。 –

+0

@ManjulaWeerasingeあなたは正しいです。 :)私はそれを説明していたはずです。申し訳ありませんが、あなたの質問は今朝まで表示されませんでした。 –

0

はその後

$(this).removeAttr("src"); 
+0

警告:これを行わないでください。これにより、追加のサーバー要求が発生します。 http://www.bennadel.com/blog/2236-empty-src-and-url-values-can-cause-duplicate-page-requests.htm –

2

は、画像を削除しようとすると、src属性をクリアこの

$(this).attr("src",""); 

を行うことによって、私の場合ので、再び

jQuery('#another_div').children("img").remove() 
jQuery('#another_div').append('<img>').attr("src",jQuery(this).prev('img').attr("src")); 
+1

それはクロムのために円滑に動作します:) tnx –

1
jQuery('#btn').live("click", function() { 
    jQuery('#another_div') 
     .children("img") 
     .attr("src", jQuery(this).prev('img').attr("src")); 
    jQuery(this) 
     .prev('img').remove(); 
}) 
3

それを追加し、しかし、画像が消えていません。したがって、このようにimgタグスタイルの属性表示をnoneに設定します。

$(this).attr("src","").css("display", "none"); 

画像を非表示にします。一時的にあなたのために働くことを願っています。

0

これは私の仕事:

var $image = $('.my-image-selector'); 
$image.removeAttr('src').replaceWith($image.clone()); 

をしかし、あなたは画像に添付している可能性のあるイベントハンドラを警戒します。そこjQueryのクローンためwithDataAndEventsdeepWithDataAndEventsオプションが常にありますが、私はそれらを使用してコードをテストしていない:http://api.jquery.com/clone/#clone-withDataAndEvents

また、あなたが複数の画像のためにこれをしたい場合、あなたはおそらくする必要がありますjQueryをそれぞれのように使用してください。私は同様の質問に同じ答え掲載

Clear an IMG with jQuery

関連する問題