Metode jQuery ajax - getScript()
Contoh
Mendapatkan dan menjalankan berkas JavaScript melalui permintaan AJAX:
$("button").click(function(){ $.getScript("demo_ajax_script.js"); });
Definisi dan penggunaan
Metode getScript() memuat dan melaksanakan berkas JavaScript melalui permintaan HTTP GET.
Sintaks
jQuery.getScript(url,success(response,status});
Parameter | Penerangan |
---|---|
url | String URL permintaan yang akan dihantar. |
success(response,status) |
Pilihan. Tentukan fungsi balikan yang akan dijalankan setelah permintaan berjaya. Parameter tambahan:
|
Pengarahan
Fungsi ini adalah pengecut Ajax, setara dengan:
$.ajax({ url: url, dataType: "script", success: success });
Fungsi balikan di sini akan menghantar kembali berkas JavaScript. Ini biasanya tidak berkesan, kerana script sudah dijalankan pada masa itu.
Skrip yang dimuat dieksekusi di lingkungan global, sehingga dapat merujuk variabel lain dan menggunakan fungsi jQuery.
Contoh: Muat berkas test.js, yang mengandung kode berikut:
$(".result").html("<p>Lorem ipsum dolor sit amet.</p>");
Dengan merujuk nama berkas ini, dapat dimuat dan dijalankan skrip ini:
$.getScript("ajax/test.js", function() { alert("Muat dilakukan."); });
Keterangan:Sebelum versi jQuery 1.2, getScript hanya dapat memanggil berkas JS yang sama domain. Dalam versi 1.2, Anda dapat memanggil berkas JavaScript lintas domain. Perhatian: Versi Safari 2 atau yang lebih awal tidak dapat melaksanakan skrip secara sinkron di lingkungan global. Jika menambahkan skrip melalui getScript, tambahkan fungsi delay.
Beberapa contoh lain
Contoh 1
Muat dan eksekusi test.js:
$.getScript("test.js");
Contoh 2
Muat dan eksekusi test.js, setelah sukses tampilkan informasi:
$.getScript("test.js", function(){ alert("Skrip dimuat dan dieksekusi."); });
Contoh 3
Muat turun Pemalam warna resmi jQuery Setelah sukses, ikatan animasi perubahan warna:
Kode HTML:
<button id="go">Jalankan</button> <div class="block"></div>
Kode jQuery:
jQuery.getScript("http://dev.jquery.com/view/trunk/plugins/color/jquery.color.js", function(){ $("#go").click(function(){ $(".block").animate( { latarbelakangWarna: 'merah jambu' }, 1000) .animate( { latarbelakangWarna: 'biru' }, 1000); }); });