относительно новый пользователь jQuery (использовал его на проходе, но сейчас действительно пытается это понять).
Я пытаюсь создать свою собственную нумерацию страниц jQuery с помощью ajax, пока мой код выглядит так:
$(document).ready(function(){
$('.pigs ul.pigspagination li a').live('click', function(e) {
e.preventDefault();
var url = $(this).attr('href');
if(url.match('^http')){
return true;
} else {
var element = $(this).closest(".pigs");
$(element).append('<div id="loading"><img alt="Loading..." src="loading.gif" /></div>');
$('#loading').fadeIn('normal');
$(element).load(url + ' ' + element);
return false;
}
});
});
Код в основном говорит о нажатии ".pigs ul.pigspagination li a", загружая родительский элемент, который является ".pigs" из данного URL, затем загружая тот же фрагмент из URL. Однако это не похоже на работу:
$(element).load(url + ' ' + element);
Я предполагаю, что загружаю URL, затем добавляю пробел, а затем говорю для элемента, на который ссылаются из
var element = $ (this) .closest (". pigs");
если вам интересно, почему я просто не могу поставить
$ (element) .load (url + '.pigs');
Это потому, что я ссылаюсь на .pigs несколько раз, и это автоматически, так как это скрипт php gallery, который я написал.
HTML выглядит примерно так:
<div class="pigs">
<ul class="pigs-gallery">
<li><a href="the link" target="_blank"></a></li>
...
</ul>
<ul class="pigspagination">
<li><a href="pagination link">< Prev</a></li>
...
<li><a href="pagination link">Next ></a></li>
</ul>
</div>
раз, однако загружено гораздо больше галерей.
Есть идеи?
-------------- РЕДАКТИРОВАТЬ для bfavaretto --------------
Пробовал это
var frag = $(this).closest(".pigs").attr('id');
$(element).load(url + ' #' + frag);
он загружает только это всасывание, но удаляет весь код, я думаю, что frag плохо передается. .attr ('id'); получит идентификатор самостоятельно, а не "#", верно?
Финальный код, если кому-то интересно:
$(document).ready(function(){
$('.pigs ul.pigspagination li a').live('click', function(e) {
e.preventDefault();
var url = $(this).attr('href');
if(url.match('^http')){
return true;
} else {
var element = $(this).closest(".pigs");
$(element).append('<div id="loading"><img alt="Loading..." src="loading.gif" /></div>');
$('#loading').fadeIn('normal');
var frag = $(this).closest(".pigs").attr('id');
$(element).load(url + ' #' + frag);
return false;
}
});
});