Membuat Navigasi Halaman AJAX Pada Blogger - Prinsipnya sederhana. Di sini Saya menggunakan navigasi Posting Lebih Lama sebagai navigasi AJAX dan menggunakan JQuery $.get() untuk memanggil URL pada navigasi tersebut:
$('#blog-pager').find('#blog-pager-newer-link').remove();
$('#blog-pager').on("click", "#blog-pager-older-link a", function() {
$.get(this.href, {}, function(data) {
}, "html");
return false;
});
Kita akan menggunakan elemen .blog-posts untuk memuat posting-posting baru dari halaman selanjutnya.
sumber:dte
#1 Menerapkan AJAX pada Navigasi Halaman
Pastikan JQuery sudah terpasang pada template. Masuk ke editor HTML template, kemudian salin kode ini dan letakkan di atas </body>:
12345678910111213141516171819202122<b:if cond='data:blog.pageType != "item"'>
<b:if cond='data:blog.pageType != "static_page"'>
<script type='text/javascript'>
(function($) {
var $pager = $('#blog-pager'),
$posts = $('.blog-posts');
$pager.find('#blog-pager-newer-link').remove();
$pager.on("click", "#blog-pager-older-link a", function() {
$.get(this.href, {}, function(data) {
var source = $(data).find('.post').length ? $(data) : $('<div></div>');
$posts.append(source.find('.blog-posts').html());
$pager.html(source.find('#blog-pager-older-link').clone());
}, "html");
$(this).replaceWith('<span>Memuat...</span>');
return false;
});
})(jQuery);
</script>
</b:if>
</b:if>
Klik Simpan Template.
Sekarang coba buka halaman blog Anda kemudian klik navigasi Posting Lama atau Older Post. Jika navigasi tersebut berubah menjadi teks bertuliskan “memuat...” seperti ini, maka itu artinya AJAX sedang bekerja:
Indikator sedang memuat
Tunggu sampai posting-posting baru muncul di bawah posting-posting yang sedang terlihat saat ini.
#1 Infinite Scroll (?)
Untuk menciptakan infinite scroll pada sistem navigasi halaman, cukup nyatakan event .scroll() pada $(window) dan cek apakah jarak gulungan layar telah mencapai batas akhir atau belum. Jika ya, picu event .click() pada navigasi AJAX yang telah kita buat sebelumnya.
Dalam kasus ini, Saya menentukan batas akhir gulungan layar bukan berdasarkan tinggi halaman, melainkan berdasarkan posisi navigasi terhadap bagian teratas dari layar:
123456789101112131415161718192021222324252627282930(function($) {
var $pager = $('#blog-pager'),
$posts = $('.blog-posts'),
loading = false;
$pager.find('#blog-pager-newer-link').remove();
$pager.on("click", "#blog-pager-older-link a", function() {
$.get(this.href, {}, function(data) {
var source = $(data).find('.post').length ? $(data) : $('<div></div>');
$posts.append(source.find('.blog-posts').html());
$pager.html(source.find('#blog-pager-older-link').clone());
loading = false;
}, "html");
$(this).replaceWith('<span>Memuat...</span>');
return false;
});
$(window).on("scroll resize", function() {
if (!loading && ($(this).scrollTop() + $(this).height()) >= $pager.offset().top) {
$pager.find('#blog-pager-older-link a').trigger("click");
loading = true;
}
});
})(jQuery);
Title : Membuat Navigasi Halaman AJAX pada Blogger
Description : Membuat Navigasi Halaman AJAX Pada Blogger - Prinsipnya sederhana. Di sini Saya menggunakan navigasi Posting Lebih Lama sebagai navigasi...