2012-01-10 7 views
0

イメージを左にクリックできる場所にjsFiddleセットアップがあります。イメージを変更するとイメージが変更されますが、DIV全体をクリックすると(expand-one)スワップしませんイメージアウト。イメージを変更onClick within DIV?

私はDIV(全体として)をクリックして、画像だけをクリックすることなくDIV内の画像を交換したいと考えています。

あなたは私がここで何を意味するかを表示することができます http://jsfiddle.net/5PDV5/1/

はあなたのすべてをありがとう! :)

答えて

1

あなたがする必要があるのは、divのクリックハンドラの中でイメージのsrcを変更することだけです。コードは次のよう読んでいましたので、

jQuery('.expand-one').click(function(){ 
     jQuery('.content-one').slideToggle('fast'); 
     var img = $(this).find('img'), 
      src = img.attr("src") 
      alt = img.data("altsrc"); 
      img.attr("src",alt).data("altsrc",src); 
    }); 
    jQuery('.expand-one').toggle(function() { 
     jQuery('.content-one').slideDown('fast'); 
     }, function() { 
     jQuery('.content-one').slideUp('fast'); 
    }); 

また、より効率的な方法は、クラスや背景画像を使用することです:

HTML

<div class="expand-one blue-icon"></div> 

CSS

.expand-one { margin-left: 5px } /* Margin of Icon Size */ 
.blue-icon { background-image: url('blue-icon.png'); } 
.green-icon { background-image: url('green-icon.png'); } 

JS

//This turns one off and the other on 
$(this).toggleClass('blue-icon green-icon'); 
+0

ああ私の神!あなたは救い主です!親切にありがとう、私は助けていただきありがとうございます。あなたは私に多くの怒りを救った。私はそれを2分で答えとしてマークします。 –

+0

私はその方法がもっと好きです。ありがとうございました! –

関連する問題