مетод Window open()

تعریف و استفاده

open() این روش یک پنجره یا تب جدید در مرورگر باز می‌کند، بسته به تنظیمات مرورگر شما و ارزش پارامترها.

لطفاً به

روش close()

مثال

مثال 1

در یک تب جدید در مرورگر "www.codew3c.com" باز می‌شود:

window.open("https://www.codew3c.com");

آزمایش کنید

مثال‌های بیشتری در پایین صفحه ارائه شده است.

نحوه استفاده

window.open(پارامتر, name, features, replace)

پارامتر

پارامتر توضیحات
پارامتر

اختیاری. URL صفحه‌ای که باید باز شود.

در صورت عدم تعیین پارامتر، یک پنجره یا تب خالی جدید باز خواهد شد.

name اختیاری. ویژگی target یا نام پنجره.
features اختیاری. لیست پروژه‌ها با کاما جدا شده، بدون فاصله.
replace

استفاده شده است.

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

از ارزش‌های زیر پشتیبانی می‌کند:

  • true - URL صفحه فعلی در لیست تاریخچه جایگزین می‌شود
  • false - URL در لیست تاریخچه جدید ایجاد می‌شود

اخطار:Chrome در استفاده از replace در صورت وجود پارامتر، استثنا ایجاد می‌شود.

پارامتر name از ارزش‌های زیر پشتیبانی می‌کند:

مقدار توضیحات
_blank URL در یک پنجره یا تب جدید بارگذاری می‌شود. پیش‌فرض.
_parent URL در فریم پدر بارگذاری می‌شود.
_self URL جابجایی می‌کند صفحه فعلی.
_top URL جایگزین هر فریم‌کیت ممکن است که بارگذاری شود.
name نام پنجره (نام عنوان پنجره مشخص نمی‌شود).

پارامترهای features پشتیبانی از مقادیر زیر را دارند:

مقدار توضیحات
fullscreen=yes|no|1|0 آیا مرورگر به صورت تمام‌صفحه نمایش داده شود. پیش‌فرض خیر است. پنجره‌های حالت تمام‌صفحه باید در حالت سینما نیز باشند. تنها برای IE معتبر است.
height=pixels ارتفاع پنجره به پیکسل. حداقل مقدار 100 است.
left=pixels موقعیت چپ پنجره (مختصات X)، به پیکسل. منفی نبودن مجاز نیست.
location=yes|no|1|0 آیا حقل آدرس نمایش داده شود. تنها برای Opera معتبر است.
menubar=yes|no|1|0 آیا نوار منو نمایش داده شود.
resizable=yes|no|1|0 آیا پنجره قابل تغییر اندازه باشد. تنها برای IE معتبر است.
scrollbars=yes|no|1|0 آیا نوار прокسیل نمایش داده شود. تنها برای IE، Firefox و Opera معتبر است.
status=yes|no|1|0 آیا نوار وضعیت اضافه شود.
titlebar=yes|no|1|0 آیا نوار عنوان نمایش داده شود. به جز برنامه‌هایی که HTML برنامه هستند یا دیالوگ‌های مورد اعتماد، قابل انکار است.
toolbar=yes|no|1|0 آیا نوار ابزار مرورگر نمایش داده شود. تنها برای IE و Firefox معتبر است.
top=pixels موقعیت بالای پنجره (مختصات Y)، به پیکسل. منفی نبودن مجاز نیست.
width=pixels عرض پنجره به پیکسل. حداقل مقدار 100 است.

نتیجه

اشاره به پنجره جدید پارامترها ارائه می‌دهد، در غیر این صورت null است.

جزئیات فنی

توضیحات

open() مетод یک پنجره موجود یا پنجره جدید مرورگر را باز می‌کند. اگر name پارامتر مشخص شده، به پنجره موجود اشاره می‌کند. پنجره باز شده پارامتر مستند مشخص شده توسط features پارامترهای

اگر مشخص نشده باشد، name پارامترهای open() مетод ایجاد می‌شود، پنجره جدیدی از مرورگر ایجاد می‌شود. این پنجره جدید پارامتر URL مشخص شده که توسط name مقدار features URL مشخص شده. اگر پارامتر اگر خالی باشد، open() پنجره جدید را باز می‌کند.

name نام پنجره جدید را مشخص می‌کند. این نام می‌تواند تنها شامل اعداد، حروف و زیرخط باشد. این نام می‌تواند به عنوان <a> و <form> مقدار ویژگی target استفاده کرد تا مستند در این پنجره مشخص شده نمایش داده شود.

از روش Window.open() در هنگام بارگذاری یک مستند جدید برای پنجره مشخص شده، می‌توان به آن replace پارامتر، برای اعلان اینکه مستند جدید در تاریخچه مرور پنجره خود یک ورودی خواهد داشت یا جایگزین ورودی فعلی خواهد شد، استفاده می‌شود. اگر replace به عنوان true باشد، مستند جدید جایگزین مستند قدیمی خواهد شد. اگر مقدار false باشد یا حذف شود، مستند جدید در تاریخچه مرور پنجره خود یک ورودی خواهد داشت. این پارامتر به عنوان Location.replace() روش فناوری‌هایی که ارائه می‌شود، اشتباه نکنید.

لطفاً با Window.open() استفاده کنید. Document.open() روش، برای وضوح کد خود بهتر است از Window.open()، و به جای open()استفاده کنید. Document.open()، بنابراین، در این موارد، باید از Window.open().

ویژگی‌های پنجره

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

feature[=value]

برای بیشتر ویژگی‌ها،value مقدار آن‌ها yes یا no است. اعداد بعد از برابری و value مقدار می‌توانند حذف شوند، اگر این ویژگی وجود داشته باشد، به عنوان پیش‌فرض value مقدار yes است، اگر وجود نداشته باشد، به عنوان پیش‌فرض value مقدار no است. اما، اگر مقدار width یا height value مقدار الزامی است، مطمئناً باید مقادیر پیکسلی خود را مشخص کنید.

پشتیبانی مرورگر

همه مرورگرها پشتیبانی می‌کنند open():

Chrome IE Edge Firefox Safari Opera
Chrome IE Edge Firefox Safari Opera
پشتیبانی پشتیبانی پشتیبانی پشتیبانی پشتیبانی پشتیبانی

مثال‌های بیشتری

مثال 2

صفحه about:blank را در پنجره/برگه جدید باز کنید:

var myWindow = window.open("", "", "width=200,height=100");

آزمایش کنید

مثال 3

پنجره جدیدی به نام "MsgWindow" باز کنید و چندین متن در آن بنویسید:

var myWindow = window.open("", "MsgWindow", "width=200,height=100");
myWindow.document.write("<p>This is 'MsgWindow'. I am 200px wide and 100px tall!</p>");

آزمایش کنید

مثال 4

با پنجره جدید جایگزین پنجره فعلی:

var myWindow = window.open("", "_self");
myWindow.document.write("<p>من پنجره فعلی را جایگزین کردم.</p>")}}

آزمایش کنید

مثال 5

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

window.open("https://www.codew3c.com", "_blank", "toolbar=yes,scrollbars=yes,resizable=yes,top=500,left=500,width=400,height=400");

آزمایش کنید

مثال 6

باز کردن چندین تگ:

window.open("http://www.google.com/");
window.open("https://www.codew3c.com/");

آزمایش کنید

مثال 7

پنجره جدیدی باز کنید و سپس از close() برای بستن این پنجره استفاده کنید:

function openWin() {
  myWindow = window.open("", "myWindow", "width=200,height=100");   // باز کردن پنجره جدید
}
function closeWin() {
  myWindow.close();   // بستن این پنجره جدید
}

آزمایش کنید

مثال 8

پنجره جدیدی باز کنید. از ویژگی name برای بازگشت به نام پنجره جدید استفاده کنید:

var myWindow = window.open("", "MsgWindow", "width=200,height=100");
myWindow.document.write("<p>نام این پنجره: " + myWindow.name + "</p>");

آزمایش کنید

مثال 9

استفاده از ویژگی opener برای بازگشت به ارجاع به پنجره‌ای که پنجره جدید را ایجاد کرده است:

var myWindow = window.open("", "myWindow", "width=200,height=100");   // باز کردن پنجره جدید
myWindow.document.write("<p>این 'myWindow' است</p>");   // متن پنجره جدید
myWindow.opener.document.write("<p>این پنجره منبع است!</p>");  // متن پنجره‌ای که جدید ایجاد می‌شود

آزمایش کنید