นอกจากนี้ยังมีปัญหาที่พบในโครงการ:
มี a.html และ b.html
1. หน้า A เปิดแล้ว แต่ยังไม่ได้เปิดหน้า B ฉันหวังว่าจะตั้งค่าพารามิเตอร์คอลัมน์บางอย่างในหน้า A เช่นสีพื้นหลังความกว้างและพารามิเตอร์อื่น ๆ และส่งผ่านไปยังหน้า B เพื่อให้สามารถใช้หน้า B ได้เมื่อเปิด
2. หน้า A เปิดอยู่แล้วหน้า B เปิดอยู่หรือไม่ ในหน้า A คุณต้องได้รับองค์ประกอบบางอย่างและแม้แต่ตัวแปรจากหน้า B เพื่ออำนวยความสะดวกในการใช้งานไปยังหน้า A
หมายเหตุ: ไม่มีปัญหาข้ามโดเมนที่เกี่ยวข้อง
หลังจากคิดมานานในที่สุดฉันก็คิดถึงวิธีแก้ปัญหา
คำถามแรกคือเราสามารถใช้คุณสมบัติของจุดยึดหน้า HTML เพื่อส่งพารามิเตอร์ไปยังหน้า B ผ่าน URL
นี่คือรหัสหน้า:
<pution> การตั้งค่ากระโดด </pution> <script> var btn = document.querySelector ('ปุ่ม'); console.log (หน้าต่าง); btn.addeventListener ('คลิก', function () {window.location = 'ci.html#bgc =#369? wd = 500'}) </script>จากรหัสคุณสามารถรู้ได้ว่าเมื่อคุณคลิกปุ่มเพื่อข้ามไปที่หน้าจะมีชุดของพารามิเตอร์หลังจาก URL กระโดดซึ่งจะไม่ส่งผลกระทบต่อที่อยู่กระโดด เมื่อเปิดหน้า B คุณสามารถรับสตริงที่สกัดกั้นตำแหน่งเพื่อรับตัวแปรและค่าตัวแปรจากนั้นนำไปใช้
นี่คือรหัสหน้า B:
<div> </div> <script> var div = document.QuerySelector ('div'); var bl = window.location.hash.slice (1) .split ('?'); if (bl.length> = 1) {สำหรับ (var i = 0; i <bl.length; i += 1) {switch (bl [i] .split ('=') [0]) {case 'bgc': document.style.style.background = bl [i] .split ('=') [1]; หยุดพัก; กรณี 'wd': div.style.width = bl [i] .split ('=') [1] + 'px'; หยุดพัก; ค่าเริ่มต้น: null; หยุดพัก; }}} </script>โดยการสกัดกั้นสตริงให้รับแอปพลิเคชันตัวแปรที่ส่งผ่านโดย URL ความสำเร็จ!
คำถามที่สองคือฉันคิดว่าจะบรรลุเป้าหมายผ่าน iframes ซึ่งเป็นเพียงเคล็ดลับ
สร้าง iframe ในหน้า A แบบไดนามิกและตั้งค่า SRC เป็นหน้า B และการแสดงผลไม่มี จากนั้นใช้คุณสมบัติ ContentDocument ของ IFRAME เพื่อรับเอกสาร IFRAME ที่ส่งคืน
รับองค์ประกอบที่จำเป็นในเอกสารและนำไปใช้
ซอร์สโค้ด:
<span> 1111111111111 </span> <script> var fram = document.createElement ('iframe'); fram.src = 'http://www.vip.com/kongzhi/fram2.html'; fram.style.display = 'ไม่มี'; document.body.appendchild (fram); fram.onload = function () {var doc = fram.contentDocument || fram.contentwindow.document; var p = doc.QuerySelector ('P'); document.body.appendchild (P); } </script>ตัวอย่างง่าย ๆ ข้างต้นของพารามิเตอร์การส่งผ่านระหว่างหน้าคงที่เพื่อรับพารามิเตอร์และการใช้พวกเขาคือเนื้อหาทั้งหมดที่ฉันแบ่งปันกับคุณ ฉันหวังว่าคุณจะให้ข้อมูลอ้างอิงและฉันหวังว่าคุณจะสนับสนุน wulin.com มากขึ้น