画像スライダーを作っています。私はajaxを使用してすべての画像をロードしています。画像のクリックイベントを書きたいのですが、ajaxでロードされているため、動作していません。
$.ajax({
type: "GET",
url: "photos.xml",
dataType: "xml",
success: function(xml) {
$(xml).find('item').each(function(){
var path = $(this).attr('path');
var width = $(this).attr('width');
var height = $(this).attr('height');
var id = $(this).attr('id');
var alt = $(this).attr('alt');
var longdesc = $(this).find('longdesc').text();
var description = $(this).find('desc').text();
$('#myImageFlow').prepend('<img src="'+path+'" id='+id+' height="'+height+'" width="'+ width+'" longdesc="'+longdesc+'" alt="'+alt+'"/>');
imgArr[i] = description;
i = i+1;
});
}
}).done(function() {
/* ===================================== */
//$("#myImageFlow").show();
// $("#myImageFlow img").photoSwipe({ enableMouseWheel: false , enableKeyboard: false });
$('img:lt(3)').addClass('t1');
$('img:gt(3)').addClass('t2');
});
$.getScript('js/iSlider.js');
$.getScript('js/code.photoswipe.jquery-3.0.5.js');
});
$('img').click( function() {
alert("image clicked");
}
使ってみた、
$('img').live('load', function() {
しかし、それは機能していません。画像がクリックされるたびにCSSメソッドを適用したい。クリック イベントは、Ajax 関数がなくても正常に機能します。