บทความนี้กล่าวถึงปัญหาการดำเนินงานของเฟรมใน JS และแบ่งปันสำหรับการอ้างอิงของคุณ การวิเคราะห์เฉพาะมีดังนี้:
รูปด้านบนเป็นตัวอย่าง ที่นี่ความสามารถในการทำงานร่วมกันระหว่างเฟรมนั้นแสดงเป็นเพียง: 1 ตัวแปร 2 วิธี 3 การได้มาซึ่งองค์ประกอบร่วมกันระหว่างหน้า
1. ก่อนอื่นจาก Parent (FrameAbc) -------> Child (Framea, FrameB, Framec)
①เข้าถึงชื่อตัวแปร
หากคุณทำงานใน FrameABC คุณสามารถ:
การคัดลอกรหัสมีดังนี้: window.frames ("framea"). contentwindow.name
หรือคัดลอกรหัสดังนี้: document.getElementById ("framea"). contentwindow.name
หรือคัดลอกรหัสดังนี้: jQuery: window. $ ("#framea") [0] .contentwindow.name
②วิธีการเข้าถึง func
หากคุณทำงานใน FrameABC คุณสามารถ:
การคัดลอกรหัสมีดังนี้: window.frames ("framea"). contentwindow.func ();
หรือคัดลอกรหัสรหัสดังนี้: document.getElementById ("framea"). contentwindow.func ();
หรือคัดลอกรหัสดังต่อไปนี้: jQuery: window. $ ("#framea") [0] .contentwindow.func ();
③เยี่ยมชมองค์ประกอบหน้าย่อย: ชื่อผู้ใช้
หากคุณทำงานใน FrameABC คุณสามารถ:
การคัดลอกรหัสมีดังนี้: window.frames ("framea"). contentwindow.document.getElementById ("ชื่อผู้ใช้");
หรือคัดลอกรหัสรหัสดังนี้: document.getElementById ("framea"). contentWindow.document.getElementById ("ชื่อผู้ใช้");
หรือคัดลอกรหัสรหัสดังต่อไปนี้: jQuery: window. $ ("#framea") [0] .ContentWindow. $ ("#ชื่อผู้ใช้");
2. จากเด็ก (framea, frameb, framec) ------------> ถึงผู้ปกครอง (frameabc)
①เยี่ยมชมชื่อตัวแปรหน้าหลัก หากดำเนินการใน framea (หน้าย่อย) ก็สามารถ:
การคัดลอกรหัสมีดังนี้: window.parent.name;
②วิธีการเข้าถึง Func หน้าหลักหากดำเนินการใน framea (หน้าย่อย) ก็สามารถ:
การคัดลอกรหัสมีดังนี้: window.parent.func ();
③เยี่ยมชมชื่อผู้ใช้องค์ประกอบหน้าหลักหากดำเนินการใน framea (หน้าย่อย) ก็สามารถ:
คัดลอกรหัสดังนี้: window.parent. $ ("#username"))
หรือ: คัดลอกรหัสรหัสดังนี้: window.parent.document.getElementById ("ชื่อผู้ใช้");
สรุป:
เฟรมเป็นเพียงเฟรมหน้า หากคุณต้องการใช้งานองค์ประกอบในเฟรมย่อยคุณต้องป้อน Window หรือ ContentWindow ก่อน การเข้าถึงหน้าหลักจากหน้าเด็กต้องใช้การคำนวณความสัมพันธ์ระหว่างพ่อแม่และแบ่งออกเป็นหลายเลเยอร์
ฉันอ่านโพสต์อื่น ๆ ออนไลน์และพูดคุยเกี่ยวกับปัญหาเกี่ยวกับการโหลดหน้าเว็บ อาจหมายความว่าหากโหลดหน้าเฟรมย่อยมันจะทำให้เกิดข้อบกพร่อง เพื่อนที่สนใจสามารถทดสอบได้ในลักษณะที่เป็นเป้าหมายและฉันเชื่อว่าจะมีผลกำไรใหม่!
ฉันหวังว่าบทความนี้จะเป็นประโยชน์กับการเขียนโปรแกรม JavaScript ของทุกคน