เมื่อวานตอนที่ฉันเขียนเอฟเฟกต์พิเศษของเว็บเพจ ฉันมักจะพบข้อผิดพลาดเสมอ ฉันไม่ทราบเหตุผลจนถึงทุกวันนี้ผ่านตัวอย่าง
ฉันคิดมาโดยตลอดว่าการใช้ document.onLoad ของ JavaScript เพื่อระบุฟังก์ชันจะเหมือนกับการเพิ่ม onLoad ให้กับแท็ก Body อย่างไรก็ตาม จากตัวอย่างในปัจจุบัน ฉันพบว่า document.onLoad จะไม่ถูกทริกเกอร์เมื่อโหลดเพจ
รหัสตัวอย่างจะเป็นดังนี้: (สภาพแวดล้อมการทดสอบ Win2003 + IE7)
1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2<html>
3<หัว>
4<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
5<title>เอกสารที่ไม่มีชื่อ</title>
6<ภาษาสคริปต์="จาวาสคริปต์">
7ฟังก์ชั่น mytest(){
8 การแจ้งเตือน(document.getElementById("my2"));
9}
10document.onLoad = การทดสอบของฉัน();
11</สคริปต์>
12</หัว>
13
14<ร่างกาย>
15<p id="my2">ทดสอบเนื้อหา</p>
16</ร่างกาย>
17</html>
เมื่อเปิดไฟล์ htm ในตัวอย่าง กล่องโต้ตอบพร้อมท์จะปรากฏขึ้นเมื่อหน้าแสดงไม่เต็มที่ กล่าวคือ หน้าจอเป็นสีขาว หมายความว่า mytest จะถูกเรียกเมื่อเพจไม่เสร็จสมบูรณ์
ใส่เครื่องหมายความคิดเห็นในประโยค document.onLoad จากนั้นแก้ไขแท็ก body เป็น
<body onLoad="mytest()">
เปิดเพจอีกครั้ง Mytest จะถูกเรียกหลังจากโหลดเพจแล้วเท่านั้น ฉันไม่รู้ว่าทำไม ฮ่าๆ