2

من یک طرف پدر و یک طرف دختر دارم. سمت فرزند با سپرده جدید باز است

وقتی برگه فرزند را می‌بندم، می‌خواهم یک اعلان از قبل نشان دهم (سمت کودک بسته می‌شود).
چگونه می توانم با بستن برگه نشان دهم که messgae بسته شده است؟ (ساعت شادابی نیست)

من بر OnUnload و onbeforeunload پیروز شده ام.
این دو روش هنگام به روز رسانی صفحات و بستن برگه ها نیز فراخوانی می شوند.

Window.onunload = تابع doUnload(e) ( هشدار ("پنجره کودک در حال بسته شدن است...")؛ )

Window.onbeforeunload = تابع doUnload(e) ( هشدار ("پنجره کودک در حال بسته شدن است...")؛ )

من موظف هستم قبل از جویدن اعلان را نشان دهم تا زمانی که برگه را در مرورگر ببندید.

کمکم کنید. پیشاپیش از شما متشکرم.

من در حال بررسی سناریوی تهاجمی هستم. یوگو با IE کار کرد. Ale با فایرفاکس کار نمی کند

window.onbeforeunload = function() ( if ((window.event.clientX< 0) || (window.event.clientY < 0) || (window.event.clientX < -80)) { alert("Child window is closing..."); } };

چگونه فایرفاکس می تواند یک مرورگر متفاوت داشته باشد؟

  • 4 نوع
  • مرتب سازی:

    فعالیت

1

به همین دلیل، این یک اسکریپت متقابل مرورگر نیست. راه حل این است که به عملکردهای غیرمستند و محدود یک مرورگر خاص تکیه نکنید، تا بدانید که این مهم تر است.

تا زمانی که صفحه CHILD را دارید، می توانید آزمایشی را با پدرتان (کنترل کننده) تنظیم کنید که در فواصل زمانی، قدرت childWindowHandle.closed و هر چیز دیگری را در آن بررسی می کند.

1

بیایید فرض کنیم که عکاسی با رابط Crossbrowser آسان است، که به طور قابل توجهی هزینه را کاهش می دهد (در پشت سرزنش عملیات)

Try(// http://www.opera.com/support/kb/view/827/ opera.setOverrideHistoryNavigationMode("compatible"); history.navigationMode = "compatible"; )catch(e)() //Our Where تابع پیام F" Are You Going ReturnMessage() ("WTF!!!"; ) //تابع تابع UnBind UnBindWindow() (window.onbeforeunload = null; return true; ) //پیوندهایی که نمی خواهیم روی سند تاثیر بگذارند .getElementById("homebtn").onclick = UnBindWindow; document.getElementById("googlebtn").onclick = UnBindWindow؛ //Bind خروج از پیام گفتگو window.onbeforeunload = ReturnMessage;

0

شما نمی توانید این را تولید کنید، به جز این روش ها، اساس فر، که کار ایجاد راه حل هایی است که کوکی های پایدار نیستند. شناسایی دیگر صفحه جدید، تغییر مسیرهای مبتنی بر فرم یا تغییر مسیرهای برگشتی یا بستن مرورگر با گزینه های مربوطه ارتباط مستقیمی ندارد. توصیه می شود جلوی کسی دروغ نگویید.

شما می توانید اقدامات زیر را با بستن تب توسط مشتری پایین انجام دهید. جاوا اسکریپت شناسایی بستن برگه مرورگر/بستن مرورگر، اگر لیست شما طولانی است و برگه قبل از تکمیل بسته شده است، در مشکل هستید. شما می توانید آن را امتحان کنید، اما با دانش من نمی توانید از هیچ چیز دیگری دور بمانید. بنابراین، در این زمان نمی توانید عقب و بسته شدن را متمایز کنید. هیچ راه قابل اعتمادی وجود ندارد که بگوییم کودک واقعاً بسته است.

Window.addEventListener("beforeunload", تابع (e) ( var confirmationMessage = "\o/"; /* آیا کد اقدام کوچکی را در اینجا وارد می کنید */ (e || window.event).returnValue = confirmationMessage; //Gecko + IE بازگشت تأیید پیام؛//Webkit، Safari، Chrome));

با این حال، اول از همه، از آنجایی که شما قصد ندارید متنی مبتنی بر وب ایجاد کنید، فقط اعلان های استاندارد ایجاد کنید، با قضاوت بر اساس نظرات، دائمی و غیرقابل برگشت است. در رابطه با این موضوع می خواستم کمی در مورد تاریخچه تغذیه بنویسم.

بدیهی است که می توانید ابتدا از مشتری بخواهید که صفحه وب کاربر را محروم نکند، زیرا اطلاعات ذخیره نشده ای دارد (مثلاً روی فرم نوشته شده است اما اطلاع رسانی به انجمن ارسال نشده است). برای این کار کافی است چیزی شبیه به این جاوا اسکریپت اضافه کنید:
window.onbeforeunload = تابع (evt) ( var message = "سند "foo" ذخیره نشده است. اگر صفحه را ترک کنید تغییرات را از دست خواهید داد."; if (نوع evt == "تعریف نشده") ( evt = window.event ; ) if (evt) ( evt.returnValue = پیام؛ ) پیام را برگرداند؛ )
پس از آن، در حالت ایده آل، کاربر دوست دارد صفحه را ببندد (به هر طریقی - برگه، کل مرورگر را ببندید، دوباره وارد صفحه شوید، آدرس جدیدی را در نوار آدرس وارد کنید، به نشانک بروید و غیره) سپس برای تایید درخواست و خروج از اینجا شما می توانید skasuvati. پیش از این، نویسندگان بی گناه سایت سعی می کردند به آنها کمک کنند تا هکر را گول بزنند و او را در صفحه قرار دهند، به عنوان مثال، متن ویکوری "برای ادامه کار با سایت روی OK ضربه بزنید و برای بسته شدن لغو کنید" (در واقعیت، دکمه ها به همان روش کار می کردند. کی). یا حتی بدتر، مانند «برای تأیید هزینه 1000 دلاری از کارت اعتباری خود، روی تأیید ضربه بزنید».

سپس مرورگرها به خود آمدند و شروع به اضافه کردن متن اضافی کردند که فریب تاجر را آسان تر می کند. به عنوان مثال، محور نحوه استفاده از IE8 است:

متن تقریبا مشابه در فایرفاکس 3:


وقتی همه را خواندید، مشخص می شود که سایت و سپس مرورگر را خواهید دید. با این حال، شما می توانید هر کسی را فریب دهید.


در اینجا ما توضیح بسیار دقیقی از عملکرد درست روی دکمه ها داریم. در حال حاضر بسیار مهم است که دوباره koristuvach را تبدیل کنید و "Piti" را برای از دست دادن و "Forfeit" را برای نوشیدن فشار دهید. به نظر من راه حل ایده آل است و این تاپیک را می توان بست. Vzagali، همانطور که می دانید، OK بدون چهره ممکن است در هر گفتگو، ردیابی را با نام عمل جایگزین کند (به عنوان مثال، "حذف فایل ها"، "جستجو"، "افزودن ردیف"، "فایل باز کردن"، و غیره) که تعداد پیام‌های koristuvacha را تغییر می‌دهد، می‌دانید که کنترل کامل متن دیالوگ را در دست دارید.

چرا درام با باگ 641509 وجود داشت؟ موردی که فایرفاکس 4 را تایید می کند به این صورت است:


ظاهراً متن کوریستوواچ در تاریکی نوشته شده است. در نسخه 4، وب سایت نمی تواند اطلاعات اضافی را در اختیار مشتری قرار دهد یا توضیح دهد که چرا مشتری نمی خواهد مشتری این کار را انجام دهد. فرض کنید، اگر یک رابط برای کار با اسناد زیادی در یک پنجره پیاده سازی کنید، و هیچ کدام از آنها در هزینه صرفه جویی نکنید، می توانید به طور خاص بگویید کدام یک، اما در فایرفاکس چیزی متوجه نمی شوید. شاید نیازی به ذخیره چیزی نداشته باشید و با دریافت اطلاعات بیشتر، با آرامش به طرف دیگر بروید، اما نمی دانید سمت راست چیست. در پایان

قبلاً چندین بار از من سؤال شده است که چگونه برگه ها را ببندم. فرض کنید که مالک می‌خواهد سایت شما را ببندد، و شما مانند پنجره‌ای در حال نشت عمل می‌کنید و می‌پرسید: آیا شما آواز میخوانید؟"، یا در حال کار بر روی تغییر مسیر به سایت دیگری هستید. البته، این روش ها در حال حاضر توسط طرفداران استفاده می شود، بنابراین توصیه می کنم آنها را vikorist نکنید. خوشبختانه، مرورگرها در حذف آنها چندان بد نیستند، اما هنوز وجود دارد. چند گزینه برای بستن برگه

می توان از کوریستوواچ پرسید: چرا میخوای کنار رو ببندی؟با بستن برگه می توان محور را به روش زیر پیاده سازی کرد:


window.onbeforeunload = function() (
بازگشت "گاهی اوقات باید به koristuvach بگویید";
}

این کد در فایرفاکس، اینترنت اکسپلورر، کروم اجرا می شود، اما در اپرا (که مرورگر هرگز کار نمی کند) اجرا نمی شود. در این حالت، تابع پردازش خود فقط می تواند ردیف را بچرخاند، به طوری که هیچ تغییر مسیری ایجاد نمی کند.

ترتیبی که چرخانده می شود در پنجره تایید در کروم و IE نمایش داده می شود. در فایرفاکس این ردیف به هیچ وجه خود را نشان نمی دهد.



زیرمجموعه های window js (14)

می‌خواهم پنجره/برگه مرورگرم را ببندم. من این را با jQuery امتحان کردم:

JQuery(window).bind("beforeunload", function() ( return confirm( "آیا واقعا می خواهید ببندید؟") )))

Ale vin همچنین با پر کردن فرم سر و کار دارد که من نمی خواهم. من چیزی می خواهم که فقط زمانی به شما خدمت کند که منشی پنجره را ببندد.

با شروع jQuery 1.7، متد .live() منسوخ شده است. برای افزودن سمپلرها از vikoryst.on() استفاده کنید. کاربران نسخه‌های قدیمی‌تر جی کوئری به خاطر vikoristavuyut.delegate() در overhaul.live() مقصر هستند.

$(window).bind("beforeunload", function() ( return true || confirm("آیا واقعا می خواهید ببندید؟"); ));

$(window).unbind();

JQuery(window).bind("beforeunload", تابع (e) ( var activeElementTagName = e.target.activeElement.tagName; if (activeElementTagName != "A" && activeElementTagName != "INPUT")) (برگردانید "آیا واقعاً میخوای ببندم؟";))))

شهادت من بر اساس آزمون های ساده است.

YAK

بخش تایید @SLaks.

$(window).on("beforeunload", function() (inFormOrLink را برگردانید؟ "آیا واقعاً می خواهید ببندید؟" : null; ))

چه مدت طول می کشد تا مرورگر را باز کنید تا صفحه را ببندید؟

ظاهراً وقتی کاربر صفحه را می‌بندد (دکمه x یا CTRL + W)، مرورگر این کد را قبل از بارگیری ذخیره می‌کند، به جز معنای اصطلاح. تنها نقطه ضعف پیام تأیید است (بازگشت "آیا واقعاً می‌خواهید ببندید؟")، که تأییدیه خبرنگار را نشان می‌دهد.

کروم: 2 ثانیه
فایرفاکس: ∞ (یا دوبار کلیک کنید یا Primus بسته شده)
لبه: ∞ (یا دوبار کلیک کنید)
کاوشگر 11: 0 ثانیه.
سافاری: انجام دادن

برای تأیید این مورد از چه چیزی استفاده کردیم:

  • سرور Node.js Express با گزارش پرس و جو
  • فایل HTML کوتاه توهین آمیز

کسانی که می توانند کار کنند باید تا حد امکان درخواست ارسال کنند قبل از اینکه مرورگر پایین صفحه خود را کامل کند (به طور همزمان).

function request() ( return $.ajax(( type: "GET"، url: "http://localhost:3030/" + Date.now()، async: true )).responseText; ) window.onbeforeunload = ( ) => ( while (true) (​​request(); ) return null;)

خروجی کروم:

GET /1480451321041 404 0.389 ms - 32 GET /1480451321052 404 0.219 ms - 32 ... GET /hello/1480451322998 404 0.328 ثانیه درخواست ارسال چند ثانیه طول می کشد.

این را هم امتحان کنید

Window.onbeforeunload = تابع () ( if (pasteEditorChange) ( var btn = تایید ("آیا می خواهید تغییرات را ذخیره کنید؟")؛ if(btn === true)( SavetoEdit();// فراخوانی تابع شما ) other (windowClose();// your function call ) ) else (windowClose();// your function call) );

فقط برگردونش...

تابع wopen_close())( var w = window.open($url، "_blank"، "width=600، height=400، scrollbars=no، status=no، resizable=no، screenx=0، screeny=0") ) ؛ w.onunload = function() ( if (window.closed) ( هشدار("پنجره بسته")؛ )else( alert("فقط رفرش شد"); ) )

متأسفانه، دوباره درگیر می شود، صفحه جدید را تغییر مسیر داده یا مرورگر را می بندد. یک جایگزین این است که شناسه‌ای را بگیرید که یک مفهوم را نشان می‌دهد، و چون فرم هیچ تابعی را فرا نمی‌خواند، و از آنجایی که شناسه فرم ندارد، اگر بازار بسته شد، با آن‌هایی که می‌خواهید کسب کنید، کار کنید. من نمی توانم تصور کنم که این به همان اندازه ممکن است و من از آن خسته شده ام.

شما می توانید اقدامات زیر را با بستن تب توسط مشتری پایین انجام دهید. جاوا اسکریپت به مرورگر نشان می دهد که برگه را ببندد / مرورگر را ببندد، اگر لیست شما بزرگ است و برگه تا تکمیل بسته است، ناامید هستید. شما می توانید آن را امتحان کنید، اما با دانش من نمی توانید از هیچ چیز دیگری دور بمانید.

Window.addEventListener("beforeunload", تابع (e) ( var confirmationMessage = "\o/"; /* آیا کد اقدام کوچکی را در اینجا وارد می کنید */ (e || window.event).returnValue = confirmationMessage; //Gecko + IE بازگشت تأیید پیام؛//Webkit، Safari، Chrome));

اگر فرم ارسالی شما آنها را به سمت دیگری هدایت می کند (من احترام می گذارم که قبل از بارگیری اجرا می شود)، می توانید سعی کنید فرم قبل از بارگیری را به یک کلیک ajax تغییر دهید. بنابراین، قبل از بارگیری فرم صفحه شما را خراب نمی کند، و شما می توانید به صلاحدید خود پیوندهای قبل از بارگیری را ویرایش کنید.

برای اطلاع از نحوه کار با عناصر شخص ثالث مرورگر، مانند Telerik (به عنوان مثال، RadComboBox) و DevExpress که به دلایل مختلف از تگ های Anchor استفاده می کنند، به کد همراه آن نگاهی بیندازید که یک نسخه کمی فشرده است. از کد desm با یک انتخابگر کوتاه کننده پیوند برچسب ها برای خودتان اتصالات:

Var yFormOrLink؛ $("a:not()، a").live("click", function() (inFormOrLink = true; )); $("form").bind("submit", function() (inFormOrLink = true; )); $(window).bind("beforeunload", function(eventObject) ( var returnValue = تعریف نشده؛ if (! inFormOrLink) ( returnValue = " آیا واقعاً می خواهید ببندید؟))"; } eventObject.returnValue = returnValue; return returnValue; });!}!}

من یک پیروز Slaks هستم، اما فکر نمی کنم، زیرا قطعات ابتدا به صورت یک ردیف تجزیه و تحلیل می شوند و سپس در پنجره تأیید مرورگر نمایش داده می شوند. به این ترتیب مقدار true نمایش داده می شود، برای مثال true.

این فقط یک تماس ویکوریستی و شرورانه است. کد محور

Var preventUnloadPrompt; var messageBeforeUnload = "پیام من در اینجا - چگونه می توانم سرعت این صفحه را افزایش دهم؟"; //var redirectAfterPrompt = "http://www.google.co.in"; $("a").live("click", function() ( preventUnloadPrompt = true; )); $("form").live("ارسال"، function() ( preventUnloadPrompt = true; )); $(window).bind("قبل از بارگیری"، تابع(e) ( var rval; if(preventUnloadPrompt) (return; ) else (//location.replace(redirectAfterPrompt); return messageBeforeUnload; ) return rval; ))

Var validNavigation = false; jQuery(document).ready(function () ( wireUpEvents(); )); تابع endSession() (// برگه مرورگر یا مرورگر بسته است // اینجا را انجام دهید ... alert("bye"); ) تابع wireUpEvents() ( /* * برای رویدادهای لیستی که قبل از بارگیری در IE فعال می شوند * http http را بررسی کنید: //msdn.microsoft.com/en-us/library/ms536907(VS.85).aspx */ window.onbeforeunload = تابع () ( اشکال زدا اگر (!validNavigation) ( endSession(); ) ) // رویداد را پیوست کنید با فشار دادن کلید F5 refresh $(document).bind("keypress", تابع (e) (e.keyCode == 116) را رفع اشکال کند (validNavigation = true; )))); // ضمیمه کلیک رویداد برای همه پیوندها در صفحه $("a").bind("click", function () ( debugger validNavigation = true; )); // رویداد ارسال را برای همه فرم ها در صفحه ضمیمه کنید $("form").bind( "submit", function () ( debugger validNavigation = true; )); ))) "کد را اینجا وارد کنید"

مشکل من: گزینه onbeforeunload تنها در صورتی فعال می شود که تعداد کلیک ها مشابه نباشد. من یک راه حل از موضوعات مشابه در SO دریافت کردم تا راه حل من کار کند. سلام، کد من گفته شده است.

$(document).ready(function() ( updatefgallowPrompt(true); window.onbeforeunload = WarnUser; ) تابع WarnUser() ( var allowPrompt = getfgallowPrompt(); if(allowPrompt) ( saveIndexedDataAlert(); updatefgallowPrompt(t); .stopPropagation ) تابع saveIndexedDataAlert() (var allowPrompt = getfgallowPrompt(); var lenIndexedDocs = parseInt($("#sortable3 > li").size()) + par#Int$ ul").size())؛ اگر (allowPrompt && $.trim(lenIndexedDocs) > 0) ( event.returnValue = "پیام شما"; } else { event.returnValue = " "; updatefgallowPrompt(true); } } $(document).click(function(event) { $("a").live("click", function() { updatefgallowPrompt(false); }); }); function updatefgallowPrompt (allowPrompt){ //exit msg dfds $("body").data("allowPrompt", allowPrompt); } function getfgallowPrompt(){ return $("body").data("allowPrompt"); }!}!}

بعد از اجرا برای من؛

$(window).unload(function(event) ( if(event.clientY)< 0) { //do whatever you want when closing the window.. } });

Window.onbeforeunload = تابع () ( بازگشت "آیا واقعاً می خواهید ببندید؟"؛ );

شاید فقط برای پردازش مجدد موارد زیر برای پردازش مجدد فرم ارسال:

JQuery("form").submit(function() ( jQuery(window).unbind("beforeunload"); ... ));

در این درس با روش‌های مختلف شی پنجره آشنا می‌شویم که به شما امکان می‌دهد پنجره را باز و بسته کنید، یعنی یک پنجره بسته است و همچنین ویژگی‌های داخلی آن را حذف کنید و غیره.

متدهای شی پنجره: open()، close()، print()، focus() و blur().

در این بخش به روش های زیر شی پنجره نگاه می کنیم:

  • open() – تکالیف برای باز کردن پنجره ها (برگه ها)؛
  • close() – برای بستن پنجره ها استفاده می کند. عمدتاً برای بستن پنجره هایی که با استفاده از متد open() بسته هستند استفاده می شود.
  • print() - تکالیف برای یکدیگر به جای یک پنجره.
  • focus() - اهداف انتقال فوکوس به پنجره مشخص شده.
  • blur() - تنظیمات برای حذف فوکوس از پنجره تعیین شده.
روش open(). دستور زیر برای باز کردن یک پنجره (برگه) جدید در مرورگر استفاده می شود:

پارامترهای روش:

  • پارامتر اول آدرس صفحه ای را که باید روی پنجره کلیک کنید را مشخص می کند. اگر پارامتر قابل توجهی را مشخص نکنید، پنجره یک سمت خالی (حدود: خالی) نمایش می دهد.
  • پارامتر دیگری به روش Open مقدار مشخصه target یا نام پنجره را مشخص می کند. مقادیر زیر پشتیبانی می شوند:
    • _blank - URL در پنجره جدید (برگه) نمایش داده می شود. ویکوریست برای ذهن مهم است.
    • _parent - URL توسط کادر پدر تحسین خواهد شد. اگر هیچ چیز دیگری وجود ندارد، URL دقیقاً در پنجره (برگه) نمایش داده می شود.
    • _self - URL دقیقاً در پنجره نمایش داده می شود.
    • _top - همه فریم‌ها را جمع‌آوری می‌کند و URL را در یک پنجره مرورگر خاص (برگه) قرار می‌دهد. اگر هیچ چیز دیگری وجود ندارد، URL دقیقاً در پنجره (برگه) نمایش داده می شود.
    • به عنوان یک پارامتر، می توانید نام پنجره را نیز وارد کنید. این داخلی است و توسط مرورگرهای وب برای دسترسی به عملکردها و روش های این پنجره قابل دسترسی است.
  • پارامتر سوم برای وارد کردن مجموعه ای از مقامات در پنجره است که از طریق کما وارد می شود. مقامات اصلی زیر پشتیبانی می شوند:
    • سمت چپ، مختصات بالا (بر حسب پیکسل) گوشه سمت چپ بالای پنجره مرورگر و گوشه سمت چپ بالای صفحه نمایش. اهمیت این مراجع ممکن است مثبت و برابر 0 باشد.
    • ارتفاع، عرض - ارتفاع و عرض ناحیه کاری پنجره مرورگر. هنگام تعیین مقدار، لازم است اطمینان حاصل شود که عرض و ارتفاع پنجره مرورگر نمی تواند کمتر از 100 پیکسل باشد.
    • قابل تغییر اندازه - قدرت منطقی پنجره، که برای افزایش یا افزایش توانایی تغییر اندازه پنجره مرورگر در نظر گرفته شده است. این توان مقادیر زیر را به خود می گیرد: بله یا 1 و نه یا 0.
    • نوارهای پیمایش - منطقی ترین پنجره است که برای فعال یا غیرفعال کردن نمایش پیمایش به جای پنجره مرورگر طراحی شده است. این توان مقادیر زیر را به خود می گیرد: بله یا 1 و نه یا 0.
    • وضعیت - قدرت منطقی پنجره که برای برجسته کردن یا نمایش ردیف وضعیت مرورگر در نظر گرفته شده است. این توان مقادیر زیر را می گیرد: بله یا 1 و نه یا 0.

بیایید نگاهی به باسن بیندازیم:

1. صفحه خالی about:blank را در پنجره جدید باز کنید. مهم است که عرض و ارتفاع برابر با 250 پیکسل باشد:

Window.open("""","width=250,height=250");

2. صفحه وب "http://site/" را از پنجره پخش باز کنید:

Window.open("http://site/", "_self");

3. یک پنجره جدید باز کنید که آهنگ قدرت را می آورد (top=100، left=100، width=400، height=500، scrollbars=yes، resizabie=yes):

Window.open("http://site", "_blank", "top=100, left=100, width=400, height=500, scrollbars=yes, resizable=yes");

چگونه می توان با جهان پس از آشکار شدن تعامل کرد؟

متد open() به شما این امکان را می دهد که یک پنجره را باز کنید و پنجره را از حالت انتخاب خارج کنید. این پیام به شما این امکان را می دهد که برای حمایت بیشتر از سوی مقامات و روش ها با این جهان تعامل داشته باشید. توبتو. ما می توانیم از کد جاوا اسکریپت اضافی که در یک پنجره ارائه شده است استفاده کنیم و آن را با یک پنجره دیگر پوشش دهیم.

به عنوان مثال، برای حرکت به شی سند یک پنجره باز:

یک پنجره خالی جدید باز کنید و متن زیر را در آن وارد کنید:

Var myWindow = window.open("", "", "width=250, height=250"); myWindow.document.write("

متن بازیگری

");

توجه: شما فقط می توانید با ویندوزهایی که باز کرده اید تعامل داشته باشید، نمی توانید با ویندوزهای دیگر معامله کنید.

متد close().

این هدف از بستن پنجره است. این روش هیچ پارامتری نداره. این پنجره برای بستن پنجره های ایجاد شده توسط متد open() استفاده می شود. در غیر این صورت، اگر سعی کنید پنجره (تب) را ببندید، آن را با خود کاربر باز کنید (نه با جاوا اسکریپت)، سپس مرورگر از طریق بررسی امنیتی از کاربر می خواهد که تأیید کند که شما این عمل را وارد کرده اید.

به عنوان مثال، بیایید دکمه هایی برای باز کردن و بستن پنجره ها با نام myWindow ایجاد کنیم:

//یک تغییر ایجاد کنید که پیام های ارسال شده به شی پنجره یک پنجره باز را ذخیره می کند var myWindow. تابع myWindowOpen ( myWindow = window.open("http://www.yandex.ru", "myWindow", "width=250, height=250"); ) تابع myWindowClose ( if (myWindow) ( myWindow.close() myWindow = null; ) ) پنجره را باز کنید پنجره را ببندید

روش print().

هدف Vіn برای یکدیگر به جای vikna. این روش هیچ پارامتری نداره.

تابع myPrint() ( window.print(); ) سمت دیگر

متد focus().

این برای تمرکز بر پنجره مشخص شده استفاده می شود. این روش هیچ پارامتری نداره.

روش blur().

هیچ تکلیفی برای حذف فوکوس از پنجره تعیین شده وجود ندارد. آن را به پس زمینه منتقل می کند. این روش هیچ پارامتری نداره.

تابع myWindowOpen() ( var myWindow = window.open(""، ""، "width=200,height=100"); ) تابع myWindowFocus() ( myWindow.focus(); ) تابع myWindowBlur() ( myWindow.bl (; ) پنجره را باز کنید Focus to the window پنجره را به پس زمینه منتقل کنید

قدرت پنجره شی: نام، بازکننده، بسته.

در کدام بخش، قدرت های زیر شی پنجره را در نظر می گیریم:

  • نام - برای حذف یا درج نام داخلی پنجره استفاده می شود.
  • بازکننده - به شما امکان می دهد پیام ها را از پنجره فعلی (شیء پنجره) که پنجره از آن باز شده است، بازیابی کنید.
  • بسته - قدرت نوع منطقی که تبدیل می شود: درست در صورت بسته بودن پنجره و نادرست اگر پنجره باز باشد.
نام قدرت

این قدرت اغلب برای تغییر نام داخلی پنجره، پس از بسته شدن آن استفاده می شود. علاوه بر این، مقدار نام را می توان تنظیم کرد تا با مقدار نام داخلی پنجره مطابقت داشته باشد.

نام داخلی پنجره، نه در یک ردیف، بین برچسبی قرار می گیرد که عنوان را باز و بسته می کند - این نام پنجره ای است که برای خرده فروش در نظر گرفته شده است. توبتو. این برای کوریستوواچ نامرئی است.

این به طور عمده در فرم های بیش از حد برای قرار دادن پنجره ای که در آن باید کناره را باز کنید استفاده می شود. به عنوان مثال، برای نشان دادن نام داخلی یک پنجره در یک هایپرلینک، از ویژگی target استفاده می شود. اگر عنصر دارای ویژگی target="searchWindow" باشد، وقتی روی یک پیام کلیک می کنید، مرورگر بلافاصله سعی می کند پنجره را پیدا کند. با چنین نام داخلی 'yam (searchWindow)، به عنوان یک پنجره با چنین داخلی. و اگر از چنین نام هایی استفاده کنید، پنجره جدیدی باز نمی شود، بلکه صفحه پشت پیام مشخص شده برای آن پنجره دوباره فعال می شود. پنجره های مرورگر نام های داخلی را در پشت خود پنهان نمی کنند.

به عنوان مثال، اجازه دهید صفحه "http://www.google.com/" را در پنجره ای به نام myWindow باز کنیم:

window.name = "myWindow";

به عنوان مثال، ما پنجره پشت متد ()open اضافی را باز می کنیم و آن را با یک نام جدید نمایش می دهیم:

var wnd = window.open("","myTest", "width=200, height=300"); wnd.document.write("

این همیشه نام است: "+wnd.name+".");

برق بازکن

این قدرت به شما این امکان را می دهد که پنجره را نگه دارید، سپس آن را به پنجره خروجی (شیء پنجره) ارسال کنید. پنجره باز بود

به عنوان مثال، شما یک پنجره خروجی (1) دارید که در آن پنجره دیگری (2) را با استفاده از روش open() باز می کنید. در این پنجره (2) می توانید پنجره (1) را با استفاده از برق اضافی بازکن حذف کنید.

function openMyWindow() ( var myWindow=window.open("","","width=200,height=200"); myWindow.document.write("باز کردن پنجره (2)");