Есть пара вещей, которые вы можете сделать.
Во-первых, вы можете просто удалить клик даже с изображения, если не хотите, чтобы он снова мог щелкнуть после попытки загрузки.
$('#thumb_list li a').click(function(){
var gallery_id = $(this).attr('gallery');
var image_id = $(this).attr('rel');
$("#image_container")
.load("inc_photos.cfm?gallery_id=" + gallery_id + "&image_id=" + image_id,
function(){
$('#thumb_list li a').unbind('click');
});
return false;
});
Однако, если вы хотите сделать что-то еще с тем же методом щелчка, вы можете добавить флаг, чтобы проверить, был ли он уже загружен. Вы можете сделать это в 2 местах, если у вас есть проблемы с этим.
var isImageLoaded = false;
$('#thumb_list li a').click(function(){
var gallery_id = $(this).attr('gallery');
var image_id = $(this).attr('rel');
if( !isImageLoaded )
{
$("#image_container")
.load("inc_photos.cfm?gallery_id=" + gallery_id + "&image_id=" + image_id,
function(){
isImageLoaded = true;
});
}
return false;
});
Вы также можете сделать это по клику, если хотите избежать дублирования сетевого трафика:
var isImageLoaded = false;
$('#thumb_list li a').click(function(){
var gallery_id = $(this).attr('gallery');
var image_id = $(this).attr('rel');
if( !isImageLoaded )
{
$("#image_container")
.load("inc_photos.cfm?gallery_id=" + gallery_id + "&image_id=" + image_id,
function(){
});
}
isImageLoaded = true;
return false;
});