テキストを展開するための jquery プラグインである expander.js を使用しています。
ここにあるのは、
展開と折りたたみがトリガーされるたびに、画像を交換することになっています。
現在、通常は問題ありません。
もう1つの情報は、拡張可能な説明と画像が付属するアイテムのリストがあるため、コード内にIDがあることです。
編集:完全なコードが表示されるようになりました。
コードは以下のとおりです。
$(document).ready(function() {
// override some default options
$('div.expandable div').expander({
slicePoint: 200, // default is 100
expandText: 'Expand', // default is 'read more...'
expandEffect: 'fadeIn',
collapseTimer: 0, // re-collapses after 5 seconds; default is 0, so no re-collapsing
userCollapseText: 'Collapse' , // default is '[collapse expanded text]'
afterExpand: function($thisElement) {
var vendorParaID = $thisElement.attr('id');
var underscore = vendorParaID.indexOf('_');
var vendorID = vendorParaID.substring(0, underscore);
$("#vendor_img_"+vendorID).attr({height : "308",
src : "img/m/"+vendorID+".jpg"
});
},
onCollapse: function($thisElement, byUser) {
//alert($thisElement.attr('id'));
var vendorParaID = $thisElement.attr('id');
var underscore = vendorParaID.indexOf('_');
var vendorID = vendorParaID.substring(0, underscore);
$("#vendor_img_"+vendorID).attr({height : "80",
src : "img/m/"+vendorID+"-crop.jpg"
});
}
});
});
ただし、画像の変化にはタイムラグがあります。
イメージをプリロードしたいのですが、正しくスワップする方法がわかりません。
これらの 2 つのリンクを調べましたが、どうすれば機能するのかまだわかりません。
http://jquery-howto.blogspot.com/2009/02/preload-images-with-jquery.html http://jquery-howto.blogspot.com/2009/04/jquery-image-swap-or-how -to-replace.html
お知らせ下さい。