شیء window در JavaScript
مدل BOM یا (Browser Object Model) به JavaScript این اجازه را می دهد تا با مرورگر صحبت کند.
BOM یا (Browser Object Model)
استاندارد رسمی برای مدل BOM وجود ندارد.
از آنجایی که مرورگرهای امروزی برای تعامل بیشتر با JavaScript، تقریباً به خصوصیت ها و متدهای یکسانی مجهز هستند، اغلب خصوصیت ها و متدهای BOM را نیز دارا هستند.
شیء window
شیء window در تمام مرورگرها پشتیبانی می شود و به پنجره مرورگر اشاره دارد.
تمام اشیاء، توابع و متغیرهای عمومی در JavaScript، عضوی از شیء window هستند.
متغیرهای عمومی، خصوصیت های (property) شیء window هستند.
توابع عمومی، متدهای (method) شیء window هستند.
حتی شیء document در مدل DOM نیز یکی از خصوصیت های شیء window است.
در کد بالا، قسمت window را می توان حذف کرد:
اندازه پنجره مرورگر
برای معیین کردن اندازه پنجره مرورگر، می توان سه خصوصیت مختلف را بکار برد (اندازه مرورگر شامل toolbars و scrollbars نمی شود):
مرورگرهای Internet Explorer, Chrome, Firefox, Opera, Safari:
- window.innerHeight
- window.innerWidth
مرورگر Internet Explorer 8, 7, 6, 5:
- document.documentElement.clientHeight
- document.documentElement.clientWidth
یا
- document.body.clientHeight
- document.body.clientWidth
یک راه حل عملی در JavaScript (پوشش دهنده تمام مرورگرها):
مثال (شیء window در JavaScript)
|| document.documentElement.clientWidth
|| document.body.clientWidth;
var h=window.innerHeight
|| document.documentElement.clientHeight
|| document.body.clientHeight;
مثال بالا، عرض و ارتفاع مرورگر را نمایش می دهد. (بدون toolbars/scrollbars)
متدهای دیگر شیء window
- ()window.open: یک پنجره جدید باز می کند.
- ()window.close: پنجره جاری را می بندد.
- ()window.moveTo: پنجره جاری را حرکت می دهد.
- ()window.resizeTo: پنجره جاری را تغییر اندازه می دهد.
- نوشته شده توسط امیر پهلوان صادق
- بازدید: 24411
دیدگاهها
با سلام چه قسمت هایی در جاوا اسکریپت برای ورود به کار مهمه و بیشتر به درد کار میخوره.ممنون از سایت خوبتون.
سلام، پیشنهاد می کنم کل مطالب ارائه شده در آموزش JavaScript که شامل 5 فصل اصلی است را مطالعه فرمایید.
با سلام
ایا فریم ورک برای مدل bom وجود دارد ؟
اگر وجود دارد چه فریم ورکی مناسب است ؟
سلام جناب.
تاحالا همچین چیزی ندیدم چون خیلی بحث گسترده ای نداره که بخواد فریم ورک داشته باشه.
شاید در بقیه فریم ورک های جی اس به این بحث پرداخته شده باشه.
عالی بود.
سلام
من میخاستم پنجره مرورگر وقتی که باز شد یک طول و یک عرض ثابت داشته باشد و قابل تغییر اندازه نباشد؛چطور میشود این کار را انجام داد؟
چطور؛چطور؛چطور
مرورگرهای مدرن مانند گوگل کروم به ما اجازه ی این کار را نمی دهند .
اما می توان با استفاده از جی کوئری این کار را انجام داد، به صورت زیر:
var size = [window.width,window.height];
$(window).resize(function(){
window.resizeTo(size[0],size[1]);
})
منبع: stackoverflow.com/questions/23474300/fixed-window-size-in-a-chrome-extension