ฉันใช้จาวาสคริปต์กับไลบรารี่ jQuery เพื่อจัดการภาพขนาดย่อของรูปภาพที่อยู่ในรายการที่ไม่ได้เรียงลำดับ เมื่อโหลดภาพมันจะทำสิ่งหนึ่งเมื่อเกิดข้อผิดพลาดมันจะทำอย่างอื่น ฉันใช้ jQuery load()
และerror()
วิธีการเป็นกิจกรรม หลังจากเหตุการณ์เหล่านี้ฉันตรวจสอบองค์ประกอบภาพ DOM สำหรับ. complete เพื่อให้แน่ใจว่าภาพไม่ได้โหลดไว้แล้วก่อนที่ jQuery จะสามารถลงทะเบียนเหตุการณ์ได้
มันทำงานได้อย่างถูกต้องยกเว้นเมื่อเกิดข้อผิดพลาดก่อน jQuery สามารถลงทะเบียนเหตุการณ์ ทางออกเดียวที่ฉันคิดได้คือใช้onerror
แอตทริบิวต์img เพื่อเก็บ "ค่าสถานะ" ไว้ที่ใดที่หนึ่งทั่วโลก (หรือบนโหนดเป็นของตนเอง) ที่ระบุว่าล้มเหลวดังนั้น jQuery สามารถตรวจสอบว่า "ร้านค้า / โหนด" เมื่อตรวจสอบ .complete
ใครมีทางออกที่ดีกว่า
แก้ไข: จุดแข็งหลักและเพิ่มรายละเอียดพิเศษด้านล่าง: ฉันกำลังตรวจสอบว่าภาพเสร็จสมบูรณ์ (โหลดแล้วหรือยัง) หลังจากฉันเพิ่มเหตุการณ์การโหลดและข้อผิดพลาดบนภาพ ด้วยวิธีนี้ถ้าภาพถูกโหลดก่อนที่เหตุการณ์จะลงทะเบียนฉันจะยังคงรู้ หากภาพไม่ได้โหลดหลังจากเหตุการณ์เหตุการณ์จะดูแลเมื่อทำ ปัญหาเกี่ยวกับสิ่งนี้คือฉันสามารถตรวจสอบได้อย่างง่ายดายว่าภาพถูกโหลดไปแล้ว แต่ฉันไม่สามารถบอกได้ว่ามีข้อผิดพลาดเกิดขึ้นแทนหรือไม่