هناك أيضًا مشكلة تواجهها في المشروع:
هناك A.HTML و B.HTML.
1. تم فتح الصفحة A ، ولكن لم يتم فتح الصفحة B بعد. آمل أن أقوم بتعيين بعض معلمات الأعمدة في الصفحة A ، مثل لون الخلفية والعرض والمعلمات الأخرى ، ونقلها إلى الصفحة B بحيث يمكن تطبيق الصفحة B عند فتحها.
2. الصفحة A مفتوحة بالفعل ، الصفحة ب مفتوحة أم لا. في الصفحة A ، تحتاج إلى الحصول على بعض العناصر وحتى المتغيرات من الصفحة B لتسهيل التطبيق إلى الصفحة أ.
ملاحظة: لا توجد مشكلات في المجال المتقاطع.
بعد التفكير لفترة طويلة ، فكرت أخيرًا في الحل.
السؤال الأول هو أنه يمكننا استخدام خصائص نقطة مرساة صفحة HTML لتمرير المعلمات إلى صفحة B من خلال عنوان URL
هذا هو رمز الصفحة:
<NUNTY> إعدادات القفز </button> <script> var btn = document.queryselector ('button') ؛ console.log (نافذة) ؛ btn.addeventListener ('click' ، function () {window.location = 'ci.html#bgc =#369؟ wd = 500'}) </script>من الكود ، يمكنك أن تعرف أنه عند النقر فوق الزر للقفز إلى الصفحة ، هناك سلسلة من المعلمات بعد عنوان URL القفز ، والذي لن يؤثر على عنوان القفز. عند فتح الصفحة B ، يمكنك الحصول على سلسلة اعتراض الموقع للحصول على المتغيرات والقيم المتغيرة ، ثم تطبيقها.
هذا هو رمز الصفحة:
<viv> </viv> <script> var div = document.queryselector ('div') ؛ var bl = window.location.hash.slice (1) .Split ('؟') ؛ if (bl.length> = 1) {for (var i = 0 ؛ i <bl.length ؛ i += 1) {switch (bl [i] .split ('=') [0]) {case 'bgc': document.body.style.background = bl [i] .split ('=') [1] ؛ استراحة؛ Case 'Wd': div.style.width = bl [i] .split ('=') [1] + 'px' ؛ استراحة؛ الافتراضي: فارغ ؛ استراحة؛ }}} </script>من خلال اعتراض السلسلة ، احصل على التطبيق المتغير الذي تم تمريره بواسطة عنوان URL. نجاح!
والسؤال الثاني هو أنني أفكر في تحقيق الهدف من خلال iframes ، وهي مجرد خدعة.
قم بإنشاء iframe بشكل ديناميكي في الصفحة A ، وقم بتعيين قيمة SRC على الصفحة B ، والعرض لا شيء. ثم ، استخدم خاصية ContentDocument الخاصة بـ iframe للحصول على مستند iframe الذي تم إرجاعه.
احصل على العناصر المطلوبة في المستند وتطبيقها.
رمز المصدر:
<span> 111111111111 </span> <script> var fram = document.createElement ('iframe') ؛ fram.src = 'http://www.vip.com/kongzhi/fram2.html' ؛ fram.Style.Display = 'none' ؛ 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 أكثر.