Penghuraian atribut AJAX: fungsi hebat yang anda tidak tahu
Pengenalan:
Dalam pembangunan web moden, AJAX (JavaScript Asynchronous dan XML) ialah konsep yang sangat penting. Ia membolehkan kami berkomunikasi secara tak segerak dengan pelayan web dan mengemas kini kandungan halaman melalui JavaScript tanpa memuatkan semula keseluruhan halaman. Selain penggunaan asas biasa, AJAX juga mempunyai beberapa fungsi yang berkuasa dan ajaib Artikel ini akan meneroka fungsi ini secara mendalam dan memberikan contoh kod khusus.
I. Memuatkan helaian gaya CSS secara dinamik
AJAX bukan sahaja boleh digunakan untuk memuatkan data XML, JSON atau HTML, tetapi juga helaian gaya CSS. Dengan menggunakan AJAX untuk memuatkan helaian gaya secara tidak segerak, kami boleh menggunakan gaya langkah demi langkah semasa halaman dimuatkan, dan bukannya menunggu keseluruhan helaian gaya dimuatkan sebelum menggunakannya. Ini sangat membantu untuk meningkatkan prestasi halaman dan pengalaman pengguna.
Contoh kod:
var xhr = new XMLHttpRequest(); xhr.open("GET", "styles.css", true); xhr.onreadystatechange = function() { if (xhr.readyState === 4 && xhr.status === 200) { var style = document.createElement("style"); style.innerHTML = xhr.responseText; document.head.appendChild(style); } }; xhr.send();
II gesaan kemajuan muat naik fail
Dalam proses muat naik fail tradisional, kemajuan muat naik tidak boleh dipaparkan, dan hasilnya hanya boleh diketahui selepas muat naik selesai. Walau bagaimanapun, menggunakan AJAX, kami boleh mendapatkan maklumat kemajuan muat naik fail dan memaparkannya kepada pengguna dalam masa nyata untuk memberikan maklum balas dan pengalaman pengguna yang lebih baik.
Contoh kod:
var xhr = new XMLHttpRequest(); xhr.open("POST", "upload.php", true); xhr.upload.onprogress = function(e) { if (e.lengthComputable) { var percent = (e.loaded / e.total) * 100; console.log("上传进度:" + percent + "%"); } }; xhr.send(formData);
Dalam contoh ini, kita boleh mendapatkan maklumat kemajuan muat naik dengan mendengar acaraxhr.upload.onprogress
, dan kemudian memprosesnya mengikut keperluan.xhr.upload.onprogress
事件,可以获取到上传进度信息,然后根据需要进行处理。
III. 跨域请求
AJAX最初设计用于同域请求,即只能请求同一域名下的资源。但是,通过一些特殊的技术手段,我们可以使用AJAX进行跨域请求,即从一个域名的页面向其他域名的页面发送AJAX请求。
代码示例:
var xhr = new XMLHttpRequest(); xhr.open("GET", "http://example.com/data", true); xhr.onreadystatechange = function() { if (xhr.readyState === 4 && xhr.status === 200) { var response = JSON.parse(xhr.responseText); console.log(response); } }; xhr.send();
在这个示例中,我们通过AJAX向http://example.com/data
AJAX pada asalnya direka untuk permintaan domain yang sama, iaitu, ia hanya boleh meminta sumber di bawah nama domain yang sama. Walau bagaimanapun, melalui beberapa cara teknikal khas, kami boleh menggunakan AJAX untuk membuat permintaan merentas domain, iaitu, menghantar permintaan AJAX dari halaman dalam satu nama domain ke halaman dalam nama domain lain.
Contoh kod:
Dalam contoh ini, kami menghantar permintaan GET kehttp://example.com/data
melalui AJAX, jika pelayan membenarkan permintaan merentas domain dan mengembalikan permintaan yang memenuhi keperluan Dengan data respons, kami boleh memproses respons dalam kod bahagian hadapan.
Atas ialah kandungan terperinci Meneroka Potensi Sifat AJAX: Rahsia Kuasa Menakjubkan Terbongkar. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!