تنبيه JavaScript على صفحة الوالدين عند إغلاق الأطفال المنبثقة
-
27-09-2019 - |
سؤال
أنا أستخدم طريقة javaScript Window.Open لفتحها لنقول http://www.google.com سيكون دائمًا عنوان URL الخارجي
لقد قمت بتخزين مرجع كائن النافذة في متغير ، والمشكلة هي أن المتغير لا يحصل أبدًا على صفحة الأصل ولا يمكنني تنبيه المستخدم بأنه قد تم إغلاق المنبثقة.
ها هي الرمز
var winFB; var winTWt; var counterFB = 0; var counterTWT = 0; var timerFB; function openFB() { if (counterFB == 0) { winFB = window.open("http://www.google.com"); counterFB = 1; } if (counterFB > 0) { alert(winFB); if (winFB == null) { counterFB = 0; clearTimeout(timerFB); alert("Window Closed"); } } timerFB= setTimeout("openFB()", 1000); }
لا يمكنني وضع أي رمز javaScript على نافذة pop up/child.
آمل أن يتمكن شخص ما من مساعدتي في هذا
المحلول
لا يتم إبطال متغير النافذة عند إغلاقه ، ولكن .closed
منشأه هو true
, ، لذا فقط قم بتغيير الشيك لتكون هذه الخاصية ، مثل هذا:
var winFB;
var winTWt;
var counterFB = 0;
var counterTWT = 0;
var timerFB;
function openFB() {
if (counterFB == 0) {
winFB = window.open("http://www.google.com");
counterFB = 1;
}
if (counterFB > 0) {
if (winFB.closed) {
counterFB = 0;
clearTimeout(timerFB);
alert("Window Closed");
}
}
timerFB = setTimeout(openFB, 1000);
}
لاحظ أيضا setTimeout()
تغيير ، تمرير وظيفة في كلما كان ذلك ممكنا (تقريبا دائماً) بدلاً من سلسلة ، سيكون لديك الكثير من المشكلات في النطاق.
نصائح أخرى
//in the parent
winFB = window.open("http://www.google.com");
//in the child window you can access
var _parent = window.opener.document;
//also use the onunload event in the child window
onunload="doSomething()"
أتمنى أن يمنحك هذا بعض الاتجاه ..
لا تنتمي إلى StackOverflow