ปลั๊กอิน jQuery ajaxreadystate
การใช้งาน jQuery AJAX ค่อนข้างจำกัดเนื่องจากไม่มีวิธีการตอบสนองต่อเหตุการณ์ readystatechange
ที่เริ่มทำงานในระหว่างการร้องขอ AJAX เอกสาร jQuery.ajax
API ระบุสิ่งต่อไปนี้จริง ๆ
อย่างไรก็ตาม ไม่มีกลไก
onreadystatechange
ให้มา เนื่องจากdone
,fail
,always
และstatusCode
ครอบคลุมข้อกำหนดที่เป็นไปได้ทั้งหมด
แม้ว่าข้อความนี้จะเป็นจริงในกรณีการใช้งานส่วนใหญ่ แต่ถ้าคุณต้องการเข้าถึงส่วนหัวการตอบกลับหรือรหัสสถานะก่อนที่คำขอทั้งหมดจะเสร็จสิ้น หรือเข้าถึงเนื้อหาการตอบกลับในขณะที่สตรีมอยู่
เห็นได้ชัดว่า jQuery ไม่มีฟังก์ชันนี้เนื่องจากปัญหาความเข้ากันได้ของเบราว์เซอร์ ดังนั้นปลั๊กอินนี้จึงเพิ่มฟังก์ชันพิเศษนี้สำหรับเบราว์เซอร์ที่รองรับคุณลักษณะเหล่านี้ (ดูบันทึกความเข้ากันได้ด้านล่าง)
ปลั๊กอินนี้ทำงานโดยการเพิ่มเมธอดใหม่ jQuery.ajaxreadystate
ซึ่งทำหน้าที่เป็น wrapper สำหรับ jQuery.ajax
ขยายฟังก์ชันการทำงานและอัปเดตออบเจ็กต์ jqXHR
เพื่อลบข้อจำกัดและอัปเดตคุณสมบัติเมื่อ readyState
เปลี่ยนแปลง
คุณใช้ jQuery.ajaxreadystate
เช่นเดียวกับที่คุณใช้ jQuery.ajax
ยกเว้นว่าคุณมีวิธีพิเศษหนึ่งวิธีที่คุณสามารถกำหนดได้ ซึ่งก็คือวิธี readystate
jQuery . ajaxreadystate ( {
readystate : function ( jqXHR , readyState ) {
}
} ) ;
เมธอดนี้จะเริ่มทำงานทุกครั้งที่คำขอเริ่มเหตุการณ์ readystatechange
และจะส่งผ่านในอ็อบเจ็กต์ jqXHR
ที่อัพเดต และ readyState
ปัจจุบัน
คุณสามารถดาวน์โหลดเวอร์ชันเสถียรและย่อส่วนล่าสุดได้จากส่วนการเผยแพร่ของพื้นที่เก็บข้อมูลนี้ หรือคุณสามารถโคลนการดาวน์โหลดที่เก็บจากผู้จัดการแพ็คเกจได้
###สนับสนุนอย่างเต็มที่
เบราว์เซอร์ต่อไปนี้ได้รับการสนับสนุนอย่างสมบูรณ์
###สนับสนุนบางส่วน
เบราว์เซอร์ต่อไปนี้ได้รับการสนับสนุนบางส่วนเนื่องจากข้อจำกัดทางเทคนิคของเบราว์เซอร์เอง มีการบันทึกปัญหาความเข้ากันได้
responseText
ไม่สามารถใช้งานได้จนกว่า readyState
จะเป็น 4
readystatechange
เพียงครั้งเดียวสำหรับ readyState
3
ณ จุดใดจุดหนึ่งระหว่างการถ่ายโอนresponseText
ไม่สามารถใช้งานได้จนกว่า readyState
จะเป็น 4
status
และ statusText
จะไม่อัปเดตจนกว่า readyState
จะเป็น 4
getAllResponseHeaders
และ getResponseHeader
ส่งคืน null
จนกระทั่ง readyState
เป็น 4
readystate
จะเริ่มทำงานสำหรับ readyState
1
เท่านั้นresponseText
ไม่สามารถใช้งานได้จนกว่า readyState
จะเป็น 4
status
และ statusText
จะไม่อัปเดตจนกว่า readyState
จะเป็น 4
getAllResponseHeaders
และ getResponseHeader
ส่งคืน null
จนกระทั่ง readyState
เป็น 4
getAllResponseHeaders
และ getResponseHeader
คืนค่า null
จนกระทั่ง readyState
เป็น 3
getAllResponseHeaders
และ getResponseHeader
คืนค่า null
จนกระทั่ง readyState
เป็น 3
readystatechange
เพียงครั้งเดียวสำหรับ readyState
3
ณ จุดใดจุดหนึ่งระหว่างการถ่ายโอนstatus
และ statusText
จะไม่อัปเดตจนกว่า readyState
จะเป็น 3
readystatechange
เพียงครั้งเดียวสำหรับ readyState
3
ณ จุดใดจุดหนึ่งระหว่างการถ่ายโอนstatus
และ statusText
จะไม่อัปเดตจนกว่า readyState
จะเป็น 3
readystatechange
เพียงครั้งเดียวสำหรับ readyState
3
ณ จุดใดจุดหนึ่งระหว่างการถ่ายโอนgetAllResponseHeaders
และ getResponseHeader
ส่งคืน null
จนกระทั่ง readyState
เป็น 4
เบราว์เซอร์รุ่นเก่ากว่าที่ระบุไว้ไม่ได้รับการทดสอบ แต่อาจได้รับการสนับสนุนบางส่วนหรือทั้งหมด
ปลั๊กอินนี้เข้ากันได้กับ jQuery 1.5+ และ jQuery 2.0.0+
หากต้องการสร้างบิลด์แบบย่อ ให้รันคำแนะนำนี้จากไดเร็กทอรีรากของที่เก็บนี้
$ npm run build
หากคุณพบจุดบกพร่องหรือมีปัญหาความเข้ากันได้ที่ไม่ได้ระบุไว้ข้างต้น โปรดเปิดตั๋วภายใต้หัวข้อปัญหาสำหรับพื้นที่เก็บข้อมูลนี้
ดู LICENSE.txt
หากใบอนุญาตนี้ใช้งานไม่ได้สำหรับคุณ โปรดติดต่อฉันได้ตลอดเวลา
หากคุณพบว่าซอฟต์แวร์ของฉันมีประโยชน์ โปรดพิจารณาบริจาคเล็กน้อยบนเว็บไซต์ของฉันที่ alexomara.com