سؤال

هذا هو الوضع. أحاول تقديم خدمة تضم شخص ما إذا قام شخص ما بتضمين IFRAME على موقع الويب الخاص بهم مع نموذج فيه. في النهاية عندما يأتي طلب AJAX مرة أخرى، أريد أن أبثق نافذة جديدة مع ملاحظة شكرا لك. window.open لا يعمل وتخمين بلدي لأن كائن النافذة ينتمي إلى الصفحة التي تضم ذلك وليس iframe وبعد ذلك سيتم اعتبار البرمجة النصية عبر الموقع. هل هناك طريقة أخرى للقيام بذلك؟

تعتقد أنني كنت قد أتمكن من إنشاء روابط مع الهدف = "_ جديد" في بلدي iframe، والنقر الذي من شأنه أن ينبثق في الواقع نافذة أخرى. ربما يمكنني إنشاء هذا الرابط و "انقر" / يؤدي ذلك إلى جافا سكريبت؟

لدي التحكم في ما يضم المستخدم الذي يحتمل أن يكون بإمكاني تضمين نصي هناك أيضا، لكن أقل رمز هناك، أفضل من الواضح.

أي يأخذ؟

هل كانت مفيدة؟

المحلول

window.open لا يعمل وتخمين بلدي لأن كائن النافذة ينتمي إلى الصفحة التي تضم ذلك

أنا لا أعتقد ذلك. window كما يشبه البرنامج النصي الخاص بك سيكون عموما window كائن المستند داخل iframe.

أكثر عادة، window.open سيتم حظر إتمام xmlhttprequest بواسطة حاصرات المرطبات المضمنة في المستعرضات. عادة ما يسمحون بفتح نوافذ جديدة فقط في استجابة مباشرة لتفاعل المستخدم (عادة، في onclick معالج الأحداث).

ربما يمكنني إنشاء هذا الرابط و "انقر" / يؤدي ذلك إلى جافا سكريبت؟

لا، وإلا فإن الجميع سوف يفعل ذلك للتحايل حاصرات!

إذا كنت تبدأ XHR وأنت تعرف أنك ستحتاج إلى نافذة منبثقة في المستقبل، فسيتعين عليك فتحه الآن ووضع بعض محتويات حشو حتى تتمكن من إرجاع XHR، عند أي نقطة يمكنك تحديث محتوياته وبعد

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top