現在問題があります。ウェブサイトである種のアコーディオンを作成しました。スライドはすべて正常に機能しますが、アイコンの画像 src を変更する関数を作成しようとすると機能しません。
ID の swap1 から swap3 を持つ 3 つの span6 があります。swap1 は最初に表示され、swap 2 と 3 は非表示になっています。
これは私のマークアップです。ここでは swap1 のみを対象としています。swap2 と swap3 は同じように構築されます。
<div id="swap1" class="span6">
<h3>Lorem Ipsum dolor sit amet?
<span class="expand"><img src="images/minus.png" /></span>
</h3>
<p>Lorem Ipsum dolor sit amet.....</p>
</div>
これはjQueryです:
$(document).ready(function() {
console.log('logging');
$('#swap2.span6 p').hide();
$('#swap3.span6 p').hide();
$(function() {
$('#swap1 .expand').click( function() {
$('#swap1.span6 p').slideToggle();
$( "#swap1 .expand" ).attr('src', 'images/plus.png').load(function();
});
$('#swap2 .expand').click( function() {
$('#swap2.span6 p').slideToggle();
$( "#swap1 .expand" ).attr('src', 'images/minus.png').load(function();
});
$('#swap3 .expand').click( function() {
$('#swap3.span6 p').slideToggle();
$( "#swap1 .expand" ).attr('src', 'images/minus.png').load(function();
});
});
});
まず、スライドは機能しますが、画像 src はまったく変化しません。第二に、あなたがスライドした後に何が起こるかについて私は立ち往生しています。画像は変更された状態のままで、状態 (展開/折りたたみ) に関係なく元に戻りません。私は現在立ち往生しており、他のアコーディオンがどのように機能するかを調べようとしましたが、実際には何も役に立ちませんでした。