Make your dream to be programer is happen

Cara Membuat Infinite Scroll Dengan jQuery dan PHP

Cara Membuat Infinite Scroll Dengan jQuery dan PHP

Cara Membuat Infinite Scroll Dengan jQuery dan PHP - Infinite Scroll adalah halaman tak berujung tanpa batas, meskipun anda tetap menscroll halaman tidak akan ada ujungnya sampai menyetuh batas terakhir konten atau hal ini biasa di sebut dengan autopagerize. Sebenarnya bukan halamannya lah yang tidak memiliki batas melainkan ketika kita mencapai bawah atau titik tertentu javascript di jquery akan langsung meload konten baru dan meletakannya di bawah konten terakhir, hal ini akan terus di lakukan hingga tidak ada lagi konten yang dapat di load.

Sebagai contoh jika anda pernah menggunakan facebook ( ya pasti pernah lahhh bkakakak ) di beranda jika anda menscroll ke bawah halaman akan terus meload status baru terus menerus tanpa ada batasnya. 

Lalu bagai manakah cara membuatnya ? langsung saja disini kita akan belajar Cara Membuat Infinite Scroll Dengan jQuery dan PHP

Untuk menulisakan script anda dapat menggunakan apa saja bebas, contoh : Notepad, Notepad++, Dreamwaver, NetBeans, Eclipse.

PHP

Kenapa pake PHP ? nah, sebenernya tanpa PHP pun kita bisa membuat infinite scroll tapi untuk memudahkan kalian nanti apabila ingin mengaplikasikannya langsung di website kalian jadi disini saya langsung menggunakan PHP. Yang namanya konten website nantinya kan harus dinamis jadi data yang di load nantinya akan berasal dari database jadi kita harus menggunakan PHP, tapi pada kali ini kita tidak akan menggunakan database tetapi hanya menggunakan PHP.

Buatlah sebuah folder baru di webserver anda ( karena disini kita menggunakan PHP jadi wajib mesti kudu harus ada webservernya ) buatlah folder dengan nama infinite_scroll kemudian buatlah sebuah file PHP baru dengan nama load_content.php dengan isi script seperti berikut :

<?php 
$id = $_GET['id'];
echo '<li>Content '.$id.'</li>';
?>

File ini yang nantinya akan di panggil oleh jQuery untuk konten selanjutnya apabila halaman di scroll. 

CSS

Agar terlihat lebih menarik kita buat sebuah file CSS baru di dalam folder yang sama dengan nama style.css masukan script berikut :

<style>
html { font-size: 100%; }
body {
font-size: 16px;
background: #0172c6;
color: #fff;
}

.wrapper {
max-width: 65%;
margin: auto;
}


h2 {
color: #fff;
padding: 0;
font-size: 1.5rem;
font-family: 'Open Sans', sans-serif;
display: block;
text-align: Center;
}

h1 {
color: #fff;
margin: 3rem 0 1rem 0;
padding: 0;
font-size: 1.5rem;
font-family: 'Open Sans', sans-serif;
font-weight: 400;
display: block;
text-align: Center;
}
.items li{
list-style: none;
width: 100%;
background: #fff;
color: #0172c6;
text-align: center;
font-size: 40px;
margin-bottom :10px;
}
</style>

jQuery

Anda dapat mengunduh jQuery langsung dari situs resminya di sini : Download
Kemudian letakan di folder yang sama dengan sebelumnya.

HTML

Sekarang untuk markupnya buatlah sebuah file PHP baru dalam folder yang sama dengan nama index.php dengan isi script :

<!DOCTYPE html>
<html>
<head>
<title>Infinite Loop | Jin Toples Programming</title>
<link href="style.css" rel="stylesheet">
<script type="text/javascript" src="jquery-1.7.2.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
var x=11;
function lastAddedLiveFunc()
{
$('div#lastPostsLoader').html('<img src="loading.gif"/>');
$.post("load_content.php?id="+x, function(data){
if (data != "") {
$(".items").append(data);
}
$('div#lastPostsLoader').empty();
x++;
});
};

//lastAddedLiveFunc();
$(window).scroll(function(){

var wintop = $(window).scrollTop(), docheight = $(document).height(), winheight = $(window).height();
var scrolltrigger = 0.95;

if ((wintop/(docheight-winheight)) > scrolltrigger) {
lastAddedLiveFunc();
}
});
});
</script>
</head>
<body>
<div class="wrapper">
<h1>Jin Toples Programming</h1>
<h2>Infinite Loop</h2>
<ul class="items">
<li>Content 1</li>
<li>Content 2</li>
<li>Content 3</li>
<li>Content 4</li>
<li>Content 5</li>
<li>Content 6</li>
<li>Content 7</li>
<li>Content 8</li>
<li>Content 9</li>
<li>Content 10</li>
</ul>
<div id="lastPostsLoader"></div>
</body>
</html>

Perhatikan pada fungsi javascript di atas :
function lastAddedLiveFunc()
Fungsi ini digunakan untuk meload konten baru dari file load_content.php dan meletakan isi konten di bagian bawah dalam class items dengan menggunakan fungsi append

Perhatikan pada baris kode java script ini :

$(window).scroll(function(){

Hal ini javascript berfungsi untuk mendeteksi apakah sebuah halaman sedang di scroll atau tidak, kemudian perhatikan pada baris - baris di bawahnya ia akan mengecek apakah halaman melebihi 0.95 / 95% atau tidak jika melebihi maka jalankan fungsi lastAddedLifeFunc.

var  scrolltrigger = 0.95;

Pada baris kode di ataslah anda dapat mengatur sampai sejauh mana halaman di scroll baru konten baru akan di load, silahkan anda coba membesar atau mengecilkannya.

Sekarang Infinite Scroll Dengan jQuery dan PHP anda sudah selesai anda dapat mencobanya dengan cara membukanya di browser anda, disarankan membukanya dengan browser Chrome atau Mozilla, jangan menggunakan IE Bkakakak.... jika di IE tidak jalan saya sudah tidak heran.

Anda juga dapat mengunduh file jadinya di sini : DOWNLOAD
Share:

Tidak ada komentar:

Posting Komentar

Cari Blog Ini

Diberdayakan oleh Blogger.

Statemen Kendali / Kondisional If di C#

Statemen Kendali / Kondisional If di C#  -  C# mempunyai statemen kendali yang hampir sama dengan bahasa - bahasa pemrograman lainnya. Ter...

Label

Recent Posts

Unordered List

  • Lorem ipsum dolor sit amet, consectetuer adipiscing elit.
  • Aliquam tincidunt mauris eu risus.
  • Vestibulum auctor dapibus neque.

Label Cloud

AJAX (3) Blogging (4) C (13) C# (15) Codeigniter (5) CSS (18) Game Maker (12) Google Maps (21) HTML (46) Instaling (2) Java (12) Java Script (40) JQUERY (16) PHP (12)

Sample Text

Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation test link ullamco laboris nisi ut aliquip ex ea commodo consequat.

Pages

Theme Support

Need our help to upload or customize this blogger template? Contact me with details about the theme customization you need.