آموزش java script - بخش 7

به این مطلب رای دهید
(0 رای)

خاصيت defaultStatus :

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

Syntax

window.defaultStatus = " متن مورد نظر "
* window = نام پنجره مورد نظر

مثال : در مثال زير با استفاده از يک دستور ساده متن نوار Statusbar مرورگر را در هنگام لود صفحه به مقدار مورد نظر تغيير داده ايم . به پايين پنجره مرورگر دقت کنيد . اين مقدار را در آينده دوباره می توان تغيير داد :
نکته : خاصيت self در مثال زير به پنجره جاری که هم اکنون در آن هستيم اشاره می کند .

Example

<script type ="text/javascript">
window.self.defaultStatus = "www.DeveloperStudio.ir :: An Investigation for Development" ;
</script>

کد

مثال : در مثال زير يک کادر متن ( TextBox ) ساده و يک دکمه فرمان را برای تعيين متن نوار StatusBar بر روی فرم قرار داده ايم . نحوه عمکرد اين مثال به اين صورت است که کاربر بايستی متنی را در درون کادر متن وارد کرده و سپس بر روی دکمه فرمان change defaultStatus کليک نمايد . در اين صورت تابع show_msg اجرا شده و متن نوار StatusBar را به متن وارد شده از کاربر تغيير خواهد داد :
نکته : خاصيت self در مثال زير به پنجره جاری که هم اکنون در آن هستيم اشاره می کند .

Example

<script type ="text/javascript">
<input size="25" />
<input value="change defaultStatus" />

function show_msg ( )
{
TxtMsg = document.getElementById ( "TxtMsg" );
var Msg = TxtMsg.value ;
window.self.defaultStatus = Msg ;
}
</script>

کد

خروجی

 

 

خاصيت length :

اين خاصيت تعداد قاب ها يا frame های موجود در پنجره را نمايش می دهد . همانطور که در HTML آموختيد ، قاب يا frame با تگ < iframe > ايجاد شده و هر قاب می تواند يک صفحه را در درون خود جای دهد . در حالت عادی تعداد frame های موجود در يک صفحه صفر است .

Syntax

window.length
* window = نام پنجره مورد نظر

نکته : نکته جالبی که در هنگام کار با اين خاصيت با آن روبرو شدم اين بود که چنانچه دستور window.length را در يک script به کار ببريم ، اين دستور فقط تعداد frame هایی که با تگ < iframe > قبل از آن script ايجاد شده اند را نشان می دهد و frame های بعد از خود را نمی شناسد . برای درک بهتر به دو مثال اين صفحه دقت کنيد . در مثال اول چون هيچ frame قبل از script آن ايجاد نشده است ، مقدار خروجی دستور window.length صفر است . اما در مثال دوم قبل از script آن يک frame ايجاد کرده ايم و می بينيم که خروجی script در اين حالت 1 است .

مثال 1 : در مثال زير با استفاده از يک script ساده ، تعداد frame های صفحه را در خروجی چاپ کرده ايم . همانطور که مبينيد ، به دلیل اينکه قبل از script اين مثال هيچ frame ی ايجاد نشده است ، مقدار خروجی صفر است .

Example

<script type ="text/javascript">
document.write ( window.length ) ;
</script>

کد

0


خروجی

مثال 2 : در مثال زير ابتدا يک قاب یا frame را ابتدا ايجاد کرده ايم و مجددا تعداد frame های موجود در صفحه را در خروجی چاپ کرده ايم . در اين حالت می بينيم که خروجی مثال 1 است :

Example

<iframe src="/Dom_Introduce.aspx" style="width: 500px; height: 200px "></iframe>

<script type ="text/javascript">
document.write ( "<br /> " + window.length ) ;
</script>

کد


1

خروجی

 

 

خاصيت name :

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

Syntax

window.name = " نام مورد نظر " ;

مثال : در مثال زير توسط يک اسکريپت ساده برای پنجره فعلی که در درون آن هستيم ، يک نام را تعيين کرده و سپس مقدار آن را در خروجی چاپ کرده ايم :

Example

<script type ="text/javascript">
window.name = "MyWindow" ;
document.write ( window.name ) ;
</script>

کد

MyWindow


خروجی


خاصيت opener :

اين خاصيت به پنجره ای که موجب ايجاد يا باز شدن پنجره فعلی شده است ، اشاره می کند . صفحه ای که به يک پنجره لينک داده است ، در صورت کليک بر روی آن لينک و رفتن به صفحه جديد ، به عنوان باز کننده يا opener صفحه جديد ، محسوب می شود .

Syntax

window.opener ;


خاصيت self :

اين خاصيت به پنجره ای که هم اکنون در آن هستيم ، اشاره می کند . اين خاصيت نيز بايد با يک خاصيت يا متد دوم برای آگاهی از خواص پنجره فعلی استفاده شود و به تنهايي کارایی چندانی ندارد . به کار بردن اين خاصيت برای اشاره به پنجره فعلی در بیشتر موارد ضروری نيست و صرفا ذکر واژه window به تنهايي کافی است اما برای اطمينان بيشتر ، بهتر است به کار رود .

Syntax

window.self ;

مثال : در مثال زير توسط يک اسکريپت ساده ابتدا به پنجره جاری که درون آن هستيم اشاره کرده و سپس آدرس کامل آن را توسط خاصيت location در خروجی چاپ کرده ايم :

Example

<script type ="text/javascript">
document.write ( window.self.location ) ;
</script>

کد

http://www.developerstudio.ir/JavaScript/Window/name.aspx


خروجی

 

شی History - خاصيت length

اين خاصيت ، تعداد صفحاتی که آدرس URL آنها در شی History ذخيره شده است را بر می گرداند .
هنگامی که يک پنجره را باز می کنيد ، مقدار اين خاصيت 0 است ، یعنی مقدار آن از صفر شروع می شود . با حرکت در بين صفحات ، به ازای هر صفحه جديد باز شده ، يک واحد به اين خاصيت اضافه می شود .
همانطور که در بخش معرفی شی History گفتم ، آدرس صفحاتی که توسط مرورگر مشاهده می کنيد ، به صورت يک آرایه در شی History ذخيره می شود . به عبارت ديگر می توان گفت اندازه اين خاصيت برابر با اعضا آرايه فوق است .

شکل کلی استفاده از اين خاصيت به صورت زير است :

Syntax

history.length

نکته 1 : خروجی اين خاصيت يک مقدار عددی ( Integer ) است .
نکته 2 : مقدار خاصيت length در مرورگر Firefox از 1 شروع می شود .

مثال 1 : در مثال زير با استفاده از خاصيت length ، تعداد صفحاتی که آدرس ( URL ) آنها در شی History مرورگر شما قرار دارد را در خروجی نشان داده ايم . ( خروجی مثال به صورت اکتيو توسط مرورگر توليد شده و از پيش طراحی شده نيست ) :

Example

<script type ="text/javascript">
document.write ( history.length ) ;
</script>

کد

132


خروجی

 

 

شی History - متدهای back , forward

متد ( ) back شی History :

اين متد ، صفحه قبلی مشاهده شده در مرورگر را باز می کند . آدرس ( URL ) اين صفحه در عنصر قبلی ذخيره شده در شی History قرار دارد .
عملکرد اين متد همانند اين است که دکمه back مرورگر را کليک کرده و يا متد ( ) go شی History را با مقدار 1- اجرا کنيد .

شکل کلی استفاده از اين متد به صورت زير است :

Syntax

history.back ( )

مثال 1 : در مثال زير از متد back در تابع backward استفاده کرده ايم . اين تابع با کليک بر روی دکمه بازگشت به صفحه قبلی فراخوانی شده و مرورگر را به صفحه قبلی مشاهده شده می برد . برای رفتن به صفحه قبل بر روی دکمه فرمان بازگشت به صفحه قبلی در قسمت خروجی کليک کنيد :

Example

<script type = " text/javascript " >
function backward ( )
{
history.back ( ) ;
}
</script>

< input   type = " button "   name = " PrPage "   value = "بازگشت به صفحه قبل"   onclick = " backward ( ) "   />

کد


خروجی

 


متد ( ) forward شی History :

اين متد ، صفحه بعدی مشاهده شده در مرورگر را باز می کند . آدرس ( URL ) اين صفحه در عنصر بعدی ذخيره شده در شی History قرار دارد . البته اين متد زمانی اجرا می شود که کاربر از مسير رفته به عقب برگشته باشد . به عبارت ديگر آدرس صفحه ای در عنصر بعدی حافظه شی History ذخيره شده باشد . در غير اين صورت نيز با فراخوانی اين متد خطایی رخ نداده و مرورگر در همان صفحه باقی می ماند .
عملکرد اين متد همانند اين است که کاربر دکمه forward مرورگر را کليک کرده و يا متد ( ) go شی History را با مقدار 1+ اجرا کنيد .

شکل کلی استفاده از اين متد به صورت زير است :

Syntax

history.forward ( )

مثال 1 : در مثال زير از متد forward در تابع fwd استفاده کرده ايم . اين تابع با کليک بر روی دکمه در شی History رفتن به صفحه بعدی فراخوانی شده و مرورگر را به صفحه بعدی مشاهده شده می برد . برای رفتن به صفحه بعد بر روی دکمه فرمان رفتن به صفحه بعدی در قسمت خروجی کليک کنيد :

Example

<script type = " text/javascript " >
function fwd ( )
{
history.forward ( ) ;
}
</script>

< input   type = " button "   name = " FwPage "   value = "رفتن به صفحه بعد"   onclick = " fwd ( ) "   />

کد


خروجی

 

 

شی History - متد go

متد ( ) go شی History :

اين متد يک صفحه که در ليست صفحات شی History مرورگر ذخيره شده است را باز می کند .
همانطور که در معرفی شی History گفتيم ، آدرس URL صفحاتی که شما در يک پنجره مرورگر مشاهده می کنيد ، در اين شی ذخيره می شود . از اين متد برای رفتن به يکی از صفحات مشاهده شده که در شی History قرار دارد ، استفاده می شود .
اين متد دارای يک پارامتر اجباری است ، که بايد به وسيله آن آدرس URL صفحه و یا شماره آن در ليست شی History را به اين متد ارسال کنيد . نوع اين پارامتر می تواند عددی ( Integer ) و یا متن ( String ) باشد .

شکل کلی استفاده از اين متد به صورت زير است :

Syntax

history.go ( VLocation * )
* VLocation : يک پارامتر عددی يا متن که آدرس صفحه مورد نظر را مشخص می کند

راهنمايي به کار بردن پارمتر : شما می توانيد شماره صفحه مورد نظر خود در ليست صفحات شی History و يا آدرس دقيق آن را به اين شی توسط پارامتر ارسال کنيد . در مثال های زير استفاده از هر دو حالت اين پارامتر را به شما نمايش می دهيم . اما معنای به کار بردن اعداد توسط اين پارامتر به صورت زير است :

عدد 1 : به معنای باز کردن صفحه بعدی مشاهده شده است ( البته متد در اين حالت زمانی کار می کند ، که کاربر از مسير رفته به عقب بازگشت کرده باشد ) .

عدد 2 : به معنای باز کردن 2 صفحه بعد مشاهده شده نسبت به صفحه جاری است و برای اعداد 3 و 4 و ... نيز به همين منوال است .

عدد 1 - (منفی ): به معنای باز کردن صفحه قبلی مشاهده شده است .

اعداد 2- و 3- و ... : به معنای باز کردن 2 صفحه قبل مشاهده شده است و برای اعداد 3- و 4- و... وضع به همين منوال است .

نکته مهم : در صورتی که صفحه تعيين شده در متد ( ) go ، قبلا در پنجره جاری مرورگر باز و مشاهده نشده باشد و به عبارت ديگر آن صفحه در شی History مرورگر وجود نداشته باشد ، در هنگام اجرای اين متد خطایی رخ نمی دهد و مرورگر در صفحه جاری باقی می ماند .

مثال 1 : در مثال زير متد ( ) go شی History را در تابع PrPage به کار برده ايم . با اجرای اين متد ، مرورگر به صفحه قبلی مشاهده شده می رود . برای اجرای اين متد بر روی دکمه فرمان Previous Page در خروجی مثال کليک کنيد :

Example

<script type = " text/javascript " >
function PrPage ( )
{
history.go ( -1 ) ;
}
</script>

< input   type = " button "   name = " BtnPrPage "   value ="Previous Page"   onclick = " PrPage ( ) "   />

کد


خروجی

مثال 2 : در مثال زير متد ( ) go شی History را در تابع UrlDefine به کار برده ايم . در اين مثال آدرس صفحه ای که می خواهيم مرورگر آن را باز کند را به صورت کامل در داخل پرانتز جلوی متد ( ) go توسط پارامتر مربوط قرار داده ايم . با اجرای اين متد ، مرورگر صفحه تعيين شده را در صورتی که شما آن را قبلا در همين پنجره مشاهده کرده باشيد ، باز می کند . برای اجرای اين متد بر روی دکمه فرمان Go Page در خروجی مثال کليک کنيد :

Example

<script type = " text/javascript " >
function UrlDefine ( )
{
history.go ( http://www.developerstudio.ir/JavaScript/Histoty.aspx ) ;
}
</script>

< input   type = " button "   name = " BtnUrl "   value ="Go Page"   onclick = " UrlDefine ( ) "   />

کد


خروجی

 منبع+

مطالب بیشتری که در این بخش خواهید یافت: جاوا اسکریپت چیست؟ »