PDA

View Full Version : می خوام قبل از اینکه کاربر صفحه ام رو ترک کنه یه اسکریپت اجرا بشه.چطوری؟



white tower
دوشنبه 25 شهریور 1392, 17:14 عصر
می خوام قبل از اینکه کاربر صفحه رو ببنده یا تغییر آدرس بده در کل یعنی از صفحه من خارج شه یه اسکریپت اجرا بشه.enclose مثل اینکه cross browser نیست یعنی همه ساپورت نمی کنن.چه راهی واسه این کار هست؟

azamicu
دوشنبه 25 شهریور 1392, 19:29 عصر
سلام دوست عزیز
اسکریپتتو توی unload صفحه بزار
اینجوری:

$(window).unload(function() {
alert('Handler for .unload() called.');
});

white tower
دوشنبه 25 شهریور 1392, 22:29 عصر
سلام دوست عزیز
اسکریپتتو توی unload صفحه بزار
اینجوری:

$(window).unload(function() {
alert('Handler for .unload() called.');
});

من می خوام با جاوا اسکریپت اینکار رو بکنم.unload رو به body وصل کردم ولی جواب نداد.
توی onload بادی

window.addEventListener('unload', function(){alert('function job')}, true);
این خط رو اضافه کردم بازم جواب نداد.
کاری که می کنم درسته؟

engmmrj
دوشنبه 25 شهریور 1392, 23:14 عصر
به این شکل عمل کنید :

window.onunload=function(){SomeJavaScriptCode};

Omid Jackson
دوشنبه 25 شهریور 1392, 23:27 عصر
من با استفاده از این کد امتحان کردم ولی GC, Opera ساپورت نمیکنن

window.onbeforeunload = function() {
return alert("bye");
};

white tower
سه شنبه 26 شهریور 1392, 01:36 صبح
من با استفاده از این کد امتحان کردم ولی GC, Opera ساپورت نمیکنن

window.onbeforeunload = function() {
return alert("bye");
};
ممنون.همین رو می خواستم.هر چی گشتم راهی برای اون دوتا مرورگر پیدا نکردم.
عجب داستانی دارن این مرورگرها.

jalil_gh
سه شنبه 26 شهریور 1392, 09:22 صبح
من با استفاده از این کد امتحان کردم ولی GC, Opera ساپورت نمیکنن

window.onbeforeunload = function() {
return alert("bye");
};
کروم هم ساپورت میکنه ولی اجازه اجرای بعضی چیزا مثل alert و confirm رو تو unonload نمیده. شما میتونید با set کردن یک کوکی و یا یه درخواست ajax چک کنید.
window.onunload = function() {
document.cookie = 'x=y; max-age=1000; path=/';
};