فهرست:
چكيده .5
1.جاوااسكريپت چيست؟ ... 6
1ـ1. اصول اسكريپت نويسي در صفحات وب .6
2ـ1. اسكريپتها و برنامه ها ..6
3ـ1. معرفي جاوااسكريپت.7
4ـ1. قابليتهاي جاوااسكريپت .7
5ـ1.جاوااسكريپت در مقابل جاوا ..7
6ـ1.چگونه جاوااسكريپت در صفحات وب قرار ميگيرد؟..8
2.خلق يك اسكريپت .. ..8
1ـ2.ابزار اسكريپت نويسي ...9
2ـ2.آغاز خلق اسكريپت .9
3. بررسي قابليتهاي جاوااسكريپت .9
1ـ3. زيباتر كردن صفحات وب به كمك جاوااسكريپت ...10
1ـ1ـ3 .استفاده از نوار وضعيت ...10
2ـ3.كاربابرنامه هاي اتصالي ......10
4. برنامه هاي جاوااسكريپت چگونه كار ميكنند. ......................................................11
1 ـ4. توابع درجاوااسكريپت .........................................................................11
2ـ4. اشياءدر جاوااسكريپت .........................................................................13
1ـ2ـ4 . جاوااسكريپت از سه نوع شيء پشتيباني مي كند..........................................13
3ـ4.كنترل حوادث ...................................................................................13
4ـ4. مخفي كردن اسكريپتها از مرورگرهاي قديمي ...............................................14
5. استفاده از مقادير و ذخيره سازي آن ...............................................................15
1 ـ 5. انتخاب نام براي متغييرها .....................................................................15
2ـ 5. تعيين مقدار براي متغيير ها. ...................................................................15
1ـ2ـ5. انواع اساسي داده ها در جاوااسكريپت ....................................................16
3ـ 5. انواع داده جاوااسكريپت.....................................................................16
6 . آرايه ها و رشته ها ..............................................................................16
1ـ6 .خلق يك شيء String...........................................................................17
2ـ7 . دستورEles......................................................................................18
8 . تكرار دستورات باكمك حلقه ها ....................................................................18
1ـ 8 . حلقه هاي For................................................................................18
2ـ 8 . حلقه هايWhile...............................................................................19
3ـ 8 . حلقه هايDo...while ........................................................................19
9. اشياء درون ساخت مرورگر...........................................................................19
1ـ 9 . اشياء چيستند؟ ...................................................................................19
1ـ 1ـ 9.خلق اشياء .....................................................................................19
2ـ 9 . خاصيتهاي اشياء و مقادير........................................................................20
3ـ 9 . گـرد كردن اعداد .............................................................................20
4ـ 9 . خلق اعداد تصادفي ...........................................................................21
5 ـ 9. كـار با تاريخها ................................................................................21
10 . مدل شيئي سند (DOM)..........................................................................21
1ـ 10 . درك مدل شيئي سند ........................................................................21
2ـ 10 . دسترسي به تاريخچه مرورگـر .............................................................22
11. خلق اشياء اختصاصي ..............................................................................23
1ـ11 . استفاده از اشياء براي ساده كردن اسكريپتها ...............................................23
2ـ11 . اختصاصي كردن اشياء درون ساخت ........................................................24
12 . پنجره ها و زير صفحه ها ..........................................................................24
1ـ 12 . كنترل پنجره ها با استفاده از اشياء .........................................................24
2ـ12 . ايجاد وقفه هاي زماني .....................................................................25
3ـ 12 . استفاده از اشياء جاوا اسكريپت براي كار با زير صفحه ها ...............................25
14. دريافت اطلاعات به كمك پرسشنامه ها .........................................................26
1ـ 14. اصول طراحي پرسشنامه ها درHTML ...............................................26
2ـ 14 . شيءfrom در جاوااسكريپت ...........................................................26
3ـ 14 . وروديهاي متن ...........................................................................26
4ـ 14 . وروديهاي چند خطي متن ...............................................................26
5ـ 14 . كـار با متن در پرسشنامه ها .............................................................26
6ـ14 . دكمه ها ....................................................................................27
7ـ 14 . مربعهاي گـزينش .........................................................................27
8 ـ 14 . دكـمه هاي راديوئي .....................................................................27
15 . تصاوير گـرافيكي و انيميشن ....................................................................28
1ـ 15 . استفاده از جاوااسكريپت براي كار با نقشه هاي تصويري .................................28
2ـ 15 . تصاوير ديناميك در جاوااسكريپت .........................................................28
16 . اسكريپتهاي فرامرور گري .........................................................................29
1ـ 16 . دريافت اطلاعات مرورگر ....................................................................29
2ـ 16 . حل مشكل ناسازگاري مرورگرها ...........................................................29
3ـ 16 . خلق يك صفحه چند منظوره ...............................................................29
4ـ16 . هدايت كاربران به صفحات وب .............................................................29
5ـ16 . خلق يك صفحه چند منظوره ..............................................................29
17 . كـار با شيوه نامه ها ..............................................................................30
1ـ 17 . معرفيHTML ديناميك ..................................................................30
2ـ 17 . شيوه و ظاهرصفحات ........................................................................31
3ـ17 . تعريف و استفاده از شيوه هايCSS .........................................................31
4ـ 17 . تنظيم مكـان متن ............................................................................31
5ـ 17 . تغيير رنگ و تصاوير زمينه ....................................................................32
6ـ 17 . كـار با فوتنهـا ...............................................................................32
7ـ 17 . كنترل شيوه ها بكمك جاوااسكريپت .........................................................32
18 . استفاده از لايه ها براي خلق صفحات ديناميك ...................................................33
1ـ 18 . لايه ها چگونه كار ميكنند؟ ...................................................................33
2ـ 18 . دو استاندارد براي خلق لايه ها ..............................................................33
3ـ 18 . خلق لايه هاي CSS ........................................................................34
4ـ 18 . تعريف خواص لايه ها ........................................................................34
19 . استفاده از جاوااسكريپت براي توسعه يك سايت وب .............................................34
1ـ 19 . خلق سند HTML ...........................................................................34
2ـ 19 . استفاده از ليستهاي بازشونده براي تسهيل هدايت كاربران .................................35
3ـ 19 . خلق دستوراتHTML ،وايجاد ساختارداده اي ...........................................35
4ـ 19 . افزودن توضيحاتي در مورد پيوندها ........................................................36
5ـ 19 . استفاده از پيوندهاي گـرافيكي ............................................................36
20 . نتيجه ..............................................................................................37
21 . خلاصه .............................................................................................38
22 . فهرست منابع .....................................................................................39
مقدمه :
انتخاب موضوع جاوااسكريپت،به معني ورودبه دنياي طراحي و برنامه نويسي صفحات وب است. وب جهاني كه در ابتدا تنها بعنوان مخزني از اطلاعات مختلف كه درقالب صفحاتي ساكن تنظيم شده بودند در نظر گرفته ميشد. با رشد سريع خود توانست به يكي ازمهمترين وسايل آموزشي ،ارتباطي ،تجاري و تفريحي تبديل شود. به موازات رشد سريع اين رسانه، ابزارهاوروشهاي توسعه آن نيز رشد كرده و متحول شده است .
گـر چه جـاوااسكـريپت يك زبان برنامه نويسي است،اما فراگيري آن بسيار ساده است. برخلاف اكثر زبانهاي برنامه نويسي،براي آموختن اين زبان به دانش زيادي نياز نداريد.سادگي ودر عين حال تواناييهاي فوق العاده اين زبان آنرا به يك ابزار مشهور وپر طرفدار براي برنامه نويسي در صفحات وب تبديل كرده است . در واقع امروزه كمتر صفحه وبي را مي يابيد كه در آن از جاوااسكريپت استفاده نشده باشد.
جاوااسكريپت چيست؟
وب جهاني (WWW)،درابتدا رسانه اي محسوب مي شد كه چيزي بيش از متن در خود داشت.
نسخة اوليه HTMLحتي قابليت تعريف يك تصوير گرافيكي را نيزدرصفحه نداشت.سـايتهاي وب امروزي مي توانند شامل قابلـيتهاي بسياري ازجمله تصاويرگرافيكي،صوت،انيميشن،ويديو وسايرمطالب چندرسانه اي باشند.زبانـهاي اسكـريپت نويسي وب، مانندجـاوااسكـريپت ، يكي ازساده ترين روشهاي ايجاد رابطة متقابل باكاربران وخلق جلوه هاي ديناميك محسوب ميشوند.
1ـ1)اصول اسكريپت نويسي درصفحات وب :
اساساً انسانها براي انتقال دادن دستورات خود به كامپيوتر از زبانهايC,Basic وجاوا استفاده ميكنند.اگرشما باHTMLآشنا باشيد بايدگفت حداقل يك زبان كـامپيوتري رامي شناسيد.به كمك دستورات زبانHTML مي توان با ساختار يك صفحه وب را تعريف كرد.مرورگر با اطـاعت از اين دستورات ظاهر صفحه رابراساس ساختار مورد نظر تنظيم مي نمايد.
HTML يك زبان علامتگذاري ساده متن مي باشد،نمي تواند با كاربران رابطة متقابل ايجاد كندويا ازآنجايي كه براساس شروط خاصي تصميماتي رااتخاذ كند. براي انجام اعمالي ازاين قبيل بايد از زبانهاي پيـچيده تري كمك گرفت. چنين زباني مي تواند يك زبان برنامه نويسي ويا يك زبان اسكريپت باشد.
اكثرزبانهاي برنامه نويسي پيچيده هستند.درمقابل، زبانهاي اسكريپتي معمولاً ازساختاربسيارساده تري برخوردار هستند.دراين زبانها ميتوان به كمك دستوراتي ساده،برخي ازعمليات موردنظررابانجام رساند.زبانهاي اسكريپتي
نداشته مي شوند.چنين سندي ميتواند يك HTMLتركيب شده ومجموعه آنها در يك سندHTML وب با دستورات صفحه ديناميك وب ايجادكند.
2ـ1)اسكـريپتهاو برنامه ها:
دستورات جـاوااسكـريپت براي اجرا شدن به يك مرورگر وب (Web Browers) و يابه طور كلي به يك نرم افزار مفسر جاواسكريپت (JavaScript Interpreetr) نياز دارند. بعضي از زبانهاي برنامه نويسي بايد قبل از اجرا به كدهاي زبان ماشين ترجمه شده و يا اصطلاحاً كمپايل شوند .
در مقابل ، دستورات جاوااسكريپت در هنگام اجرا تفسير مي گردند. به عبارت ديگر مرورگر با خواندن هر يك از اين دستورات آنرا تفسير و اجرا مي نمايد.
زبانهايي كه تفسير مي شوند يك مزيت بزرگ دارند و آن اين است كه نوشتن و يا تغيير دادن دستـورات HTMLچنين زباني بسيارساده است .مثلاً تغيير يك برنامه جاوااسكريپت به سادگي تغيير دستورات دريك سند HTML مي باشد اين تغيرات به محض بار شدن مجدد سند در صفحه وب اعمال خواهند شد.
3ـ1)معرفي جـاوااسكـريپت:
جـاوااسكـريپت براي اولين باربه وسيله شركت نت اسكيپ توسعه يافته ودرمرورگرnetscapenavegator به كار گرفته شد . اين زبان،اولين زبان اسكـريپتي در عرصه وب به شماررفته و همچنان پر استفاده ترين زبان اسكـريپتي ميباشد.
جاوااسكريپت در ابتداlivescript نام داشت ودرسال 1995درنسخه دوم netscapenavigator به كارگرفته شد سپس به جهت رابطه اي كه با جاوا برقرار نمود جـاوااسكـريپت نام گرفت.
4ـ1)قابليتهاي جـاوااسكـريپت:
1.افزودن پيغامهاي متحرك و متغير به نوار وضعيت (status bar ) مرورگر.
2.بررسي محتويات يك پرسشنامه و انجام عمليات لازم بر روي آن قبل از ارسال پرسشنامه به سوي سرويسگر .
3.نمايش پيغامهاي دلخواه بـراي كـاربرچه از داخل صفحه وب و چه ازطريق پنجره هاي هشـدار (Alert windowse ) ساخت انيميشن و يا تصاويري كه در اثر حركت يا كليك كردن موس تغييرمي يابند.
4.تشخيص نوع مرورگر و نمايش دادن مطالب بر اساس آن.
5.تشخيص برنامه هاي اتصالي نصب شده و هشدار به كاربر در صورت نياز به يك برنامه اتصالي خاص.
موارد بالا تنها نمونه هاي اندكي از قابليتهائي هستند كه جاوااسكريپت مي تواند به يك صفحه وب بيفزايد.
با استفاده از اين زبان مي توان برنامه هاي كاملي را در يك صفحه وب خلق كرد . ما در اين تحقيق سعـي
مي كنيم به آموزش اين زبان بپردازيم.
5ـ1)تفاوتهاي جـاوا و جـاوااسكـريپت:
اين دو زبان ذاتاً با يكديگر متفاوتند . مهمترين اين تفاوتها عبارتند از :
1.اپلتهاي جاوا براي اينكه بتوانند در يك مرورگر وب اجرا شوند ، بايد كمپايل شده و به فايلهايي با پسوند class تبديل شوند . در مقابل جـاوااسكـريپت از دستورات متني استفاده كرده و مي توانددر يك سند HTML نوشته شود.
2.اپلتهاي جـاوا معمولاً در يك پنجره يا يك قسمت جداگانه از صفحه اجرا مي شوند ولي دستورات جـاوااسكـريپت ميتواند بر روي هر قسمت از صفحه وب تأثيربگذارند.
3.در حالي كه جـاوااسكـريپت براي نوشتن برنامه هاي ساده، افزودن قابليتهاي ديناميك و ايجاد رابطه متقابل با كاربران بسيار مناسب است، به كمك جـاوا مي توان برنامه هايي كاملاِ پيچيده خلق كرد. براي مثال يك نسخه از پردازشگر متنcorels wordperfect كه با استفاده از جـاوا نوشته شده در دسترس قرار دارد .
بايد گفت انجام چنين پروژه اي به كمك جـاوااسكـريپت كاملاً غير ممكن است .علاوه بر موارد مذكور،تفاوتهاي زيادديگري بين اين دوزبان وجود دارد .به هرحال نكته مهم اين است كه به خاطر داشته باشيد جـاوااسكـريپت و جاوا دو زبان كاملاً متفاوت هستند.هر دوي اين زبان درموارد خاصي مفيد هستند و حتي ميتوان از هر دوي آنها در يك صفحه وب استفاده كرد .
6ـ1)چگونه جـاوااسكـريپت در يك صفحه وب قرار ميگيرد ؟
همانطوركه ميدانيدypertext Markup LanguageHTML زبان خلق صفحات وب ميباشندبراي يادآوري ليست زير را در نظـربگيريد.ايـن ليست يك سندHTML ساده با يك عبارت جاوااسكريپت رانشـان ميدهد:
<HTML>
<HEAD>
<TITLE>OUR HOME PAGE</TITLE>
<BODY>
<H1>THE SOCIETY</H1>
<P>WELCOME TO OUR WEB PAGE. UNFORTUNATELY.</P>
<SCRIPT LANUAGE=”JAVASCRIPT”>
DOCUMENT.WRITE(DOCUMENT.LASTMODIFIED);
</SCRIPT>
</BODY>
</HTML>
اين سند ،از يك قسمت سر (Head) ، كه بيـن دستورات <head > …</head> قرار گرفته،ويك قسمت بدنه (Body) ، كه بـه وسيله دستورات<body>…</body> مشخص گرديده ،تشكيل شـده است. بـراي افـزودن دستورات جـاوااسكـريپت به يك صفحه ،بايد از دستور <script> بهره جست.
دستور<script> به مرورگرميفهماند كه ازاين قسمت سند،تاهنگامي كه به دستـور پاياني</script> برخورد كند،با دستورات جاوااسكريپت مواجه خواهد شد.در اكثر موارد،استفاده از عبارات جـاوااسكـريپتي در خارج از محدوده دستور <script>مجاز نميباشد
بويژگيlanguage كه دركناردستور<script> واقع شده است توجه كنيد.ويژگي language= Javascript به مرورگـر ميفهماند كه زبان اسكريپتي اين قسمت از سند،جـاوااسكـريپت مي باشد . به همـراه اين ويژگي، همچنين ميتوان شماره نسخه جـاوااسكـريپت را ذكر كند.
خلق يك اسكـريپت:
جاوااسكريپت يك زبان اسكريپت نويسي در صفحات وب است . دستورات جاوااسكريپت را ميتوان مسـتقيماً درداخـل سندHTML قرار دادواين اسكريپتهادرهمان هنگام كه صفحه وب در مرورگـر به نمـايش در ميآيد اجرا خواهند شد .
1ـ2)ابزار اسكريپت نويسي:
ابزار اسكـريپت نويسي بر خلاف اكثرزبانهاي برنامه نويسي، براي نوشتن جـاوااسكـريپت به نرم افزارخاصي نياز نداريد.در واقع ، به احتمال زياد شما تمامي ابزار لازم براي استفاده از جاوااسكريپت را در اختيـار داريد .بـه طور كلي، اوليـن ابـزاري كه براي كار با جاوااسكريپت لازم است ،يك ويرايشگرمتن(Text E ditor) ميباشد . برنامه هاي جاوااسكريپت درقالب فايلهاي متني سـاده ومعمولاً بصورت جزئي ازيك سند HTML ذخيره مي گردند . بنابراين كه بتواند فايلهاي متني ASCII راويرايش كند،براي اين كار مناسب خواهد بود.
به هر حال شما مي تواند از بين ويرايشگرهاي متعددي كه دردسترسي قرار دارند (از يك ويرايشگر متن بسيار ساده گرفته تا پردازشگرهاي پيچيده) يكي را انتخاب كرده و بدين منظور استفاده نماييد. براي مثال ميتوانيد از نرمافزار Notepad كه در اكثر محيطهاي ويندوز در دسترس قرار دارد بهره بگيريد.
توجه داشته باشيد كه اگر از يك پردازشگر پيچيده متن، براي خلق برنامههاي جاوااسكريپت استفاده ميكنيد، بايد برنامة خود را در قالب يك فايل متني ASCII ذخيره نماييد.
بسياري از پردازشگرهاي متن از ساختارهاي پيچيدهتري به منظور ذخيرهسازي فايلهاي خوداستفاده ميكنند.
بعلاوه ويرايشگرهاي متعددي براي خلق اسنادHTML دردسترس قراردارندكه ازجاوااسكريپت نيز پشتيباني ميكنند.بسياري ازآنها شامل قابليتهاي خاصي براي كارباجاوااسكريپت ميباشند.مثلاًدستورات جاوااسكريپت را به رنگ ديگري نمايش ميدهند.بعضي ازآنها ميتواند بصورت اتوماتيك اسكريپتهاي سادهاي رابه صفحه اضافه كنند.
براي نوشتن يك اسكريپت در سندHTML،بايد از دستور<script> استفاده كنيد.بعبارت ديگريك اسكريپت را بايد بين دستورات آغازين و پاياني <script>…</script> قرار دارد.
بخاطرداشته باشيدكه بين دستـورات آغازي وپاياني<script>…</script> هيچ چيز بجزعبارتهاودستورات جاوااسكـريپت قرار ندهيد. حتي اگر در اين بين يك دستور مجازHTML نيزوجودداشته باشد ، مرورگريك پيغام خطا نمايش خواهد داد.
بررسي قابليتهاي جاوااسكريپت:
1.زيباتر كردن ظاهر يك صفحه وب به كمك جاوااسكريپت
2.خلق پيغامهاي متحرك
3.قابليتهايي كه جاوااسكريپت در مورد تصاوير و انيميشنها در اختيار ما ميگذارد.
4.استفاده از جاوااسكريپت براي ارزيابي محتواي پرسشنامهها
5.تشخيص نوع مرورگر به كمك جاوااسكريپت
6.استفاده از جاوااسكريپت براي كار با برنامههاي اتصالي
7.خلق برنامههاي پيچيدهتر به كمك جاوااسكريپت
8.چگونه ميتوانيم يك اسكريپت را از يك صفحه ديگر به صفحه وب خود منتقل كنيم.
اگر تاكنون به مرورصفحات وب جهاني پرداخته باشيد،مطمئناً به صفحات خستهكنندة زيادي برخوردكردهايد بايد گفت يكي از مهمترين موارد استفاده جاوااسكريپت، اضافه كردن جلوههايي زيبا به صفحات وب ميباشد از جمله ميتوان به قابليتهايي مانند پيغامهاي متحرك، انيميشنهاو روشهاي جديد ارائه اطلاعات نام برد.
نوار وضعيت (Status bar) پايينترين قسمت پنجره يك مرورگرراتشكيل ميدهدكه معمولاًبه رنگ خاكستري ديده ميشود. مهمترين نقشهايي كه اين نوار به عهده دارد شامل موارد زير ميباشد:
1.نمايش توضيحات مربوط به منوها و يا ساير ابزار مرورگر
2.نمايش URL پيوندهايي كه نشانهگر موس بر روي آنها قرار داده ميشود.
3.نمايش وضعيت يا عملكرد فعلي مرورگر در حالي كه كاربر به مرور صفحات وب ميپردازد.
به كمك جاوااسكريپت ميتوان نوار وضعيت مرورگر را تحت كنترل درآورد. احتمالاً تاكنون صفحات وبي را كه از اين قابليت استفاده كرده ودر نوار وضعيت خودپيغامهاي متحركي را نمايش ميدهند ديدهايد. گرچه اين كـار ميتواند براي كاربران ناراحتكننده باشد اما هنوز يكي ازپراستفادهترين قابليتهاي جاوااسكريپت محسوب ميشود.
علاوه بر نمايش پيغامهاي متحرك،روشهاي ديگري نيز براي استفاده از اين نوار وجود دارد.براي مثال، ميتوان به تعويضURL يك پيوندباتوضيح ديگري در ارتباط باآن،هنگامي كه نشانهگر موس بر روي آن قرار ميگيرد اشاره نمود.
برنامههاي اتصالي(Plug-inها)برنامههاي كوچكي هستندكه به مرورگراضافه شده وآنرا قادرميسازند فايلهايي باساختارهاي متفاوت رادرصفحه وب اجرا نمايد.برنامههاي اتصالي متعددي دردسترس قراردارند.ازبرنامههايي براي اجراي فايلهاي صوتي و ويدئويي گرفته تابرنامههاي نمايش واقعيت مجازي همگي موجود ميباشند.
چهار برنامه اتصالي مشهور عبارتند از:
3.ShockWave
گرچه به كمك برنامههاي اتصالي تقريباً ميتوان هر محتوايي را به صفحات وب افزود، ولي مشكل بزرگي در راه استفاده وسيع از آنها وجود دارد.گذشته از برنامههاي اتصالي معدودي كه به همراه مرورگرهاوجود دارند، نمي توان بوجوديك برنامه اتصالي خاص به هرماه مرورگرتمامي كاربران مطمئن بود.به اين ترتيب برنامههاي اتصالي مشكلي شبيه بمشكل نسخههاي مختلف مرورگرها ايجاد ميكنند.تمامي كاربران از يك نسخه خاص ازيك مرورگرخاص، با برنامههاي خاص استفاده نميكنند، براي حل اين مشكل بايد يكـي از اين دو راه را انتخاب نماييد:
بكمك جاوااسكريپت ميتوان وجودياعدم وجود بـرنامه اتصالي مورد نظرراتشـخيص داده وصفحهاي مناسب رابه كاربرعرضه كرد.درصورت عدم وجود بـرنامه اتصالي دلخواه،ميتوانيدكاربررا به صفحهاي براي برداشت آن برنامه اتصالي هدايت نماييد.
علاوه بر تشخيص نوع برنامههاي اتصالي، جـاوااسكـريپت ميتواند با اين برنامهها ارتباط برقرار كرده و آنـها را كنترل نمايد. نت اسكيپ اين قابليت را LiveConnect ناميده است.
برنامههاي جاوااسكريپت چگونه كار ميكنند؟
در اين قسمت بااصول اوليه زبان جاوااسكريپت واجزاء اساسي آن كه تقريباًدر هربرنامة جاوااسكريپت وجود دارند، آشنا خواهيد شد.
بطور خلاصه در اين قسمت مطالب زير را ميآموزيد:
1.سازماندهي اسكريپتها به كمك توابع
2.اشياء چيستند و جاوااسكريپت چگونه آنها را بكار ميبرد.
3.جاوااسكريپت چگونه به حوادث پاسخ ميدهد.
4.مخفي كردن دستورات جاوااسكريپت از مرورگرهاي قديمي
5.استفاده از يك جايگزين جاوااسكريپت، براي مرورگرهاي قديمي
1ـ4)توابع در جاوااسكريپت:
درواقع،مرورگراولين دستوري راكه پس از<script> قرارداشت اجراكرده سپس خط به خط، سراغ دستورات بعدي ميرفت تا به دستور پاياني <script> برخورد كند.
گرچه اين روش، براي اسكـريپتهاي كوتاه، كاملاً قابل درك و ساده ميباشد. اما براي يك اسكـريپت طولاني ميتواند گيجكننده محسوب شود. جـاوااسكـريپت از قابليتي بنام (توابع) پشتيباني ميكند كه به سـازماندهي بيشتر اسكريپتها كمك مينمايد.
تعريف يك تابع :
توابع (Function)، تعدادي از دستورات جاوااسكريپت هستند كه ميتوان آنها را بعنوان يك گروه واحد در نظر گرفت و با يك ارجاع آنها را اجرا نمود. براي استفاده از يك تابع، در ابتدا بايد آنرا تعريف كرد. ليست 1-1، مثال سادهاي را نشان ميدهد كه در آن به تعريف يك تابع پرداختهايم.
ليست 1-1تعريف يك تابع |
Function Greet() {Alert(“Greetings.”); } |
در اين ليست تابعي تعريف شده است كه ميتواند يك پيغام هشدار (Alert Message) را نمايش دهد. بطور كلي براي تعريف يك تابع، ازعبارت function استفاده ميشود. پس ازاين عبارت، نام تابع(دراينجا Greet) قرار ميگيرد. به پرانتزهايي كه پس از اين نام قرار دارند توجه كنيد. در صفحات آينده خواهيد ديد كه فضاي بين اين پرانتزها هميشه خالي نميباشد.
سپس، علامتهاي كروشه }) و ({ در ابتدا و انتهاي دستوراتي كه آن تابع را تشكيل ميدهند قرار داده ميشوند. مرورگر به كمك اين علامتهاميتواندابتداوانتهاي تابع را تشخيص دهد.تابع مثال فوق، تنها ازيك دستور alert (كه يك پيغام هشدار را نمايش ميدهد) تشكيل شده است. در مورد پرانتزهايي كه در مقابل نام تابع مشـاهده كرديد، بايد گفت پـارامترهايي كه براي يك تابع فرستاده ميشوند در اين بين قرار ميگيرند. در اين مثال تابع Greet هميشه يك عمل خاص را انجام ميدهد: اين تابع پيغام “Greetings.” را براي كاربر نمايش ميدهد.
اگر ميخواهيد تابع شما قابليت انعطافپذيري بيشتري داشته باشد، ميتوانيد پـارامترهايي را براي آن تعريف كنيد. به اين پارامترها، آرگومان (Argument) نيز گفته ميشود.آرگومانها،متغيرهايي هستند كه هر بار كه تابع صدا زده ميشود، براي آن ارسال ميگردند. براي مثال ميتوانيد پارامتري بنام who را براي تابع مثال فوق در نظر بگيريد. تصور كنيد كه اين پارامتر نام شخصي را كه قصد داريد پيغام خوشآمدگويي را براي او بفرستيد
در بردارد.
البته،براي استفاده از يك تابع، بايد آنرا در يك سند HTML قرار داد. بطور معمول، بهترين قسمت سند براي قرارگيري توابع اسكريپتي، قسمت سر (head) آن ميباشد، زيرا به اين ترتيب ميتوان مطمئن بود كه يك تابع قبل از اينكه بخواهد مورد استفاده قرار بگيرد، براي مرورگر تعريف شده است.
2ـ4)اشياء در جاوااسكريپت :
بايد گفت جاوااسكريپت علاوه بر متغيرها، از اشياء (Objects) نيز پشتيباني ميكند. اشياء نيز همانند متغيرها ميتوانند دادهها را ذخيره نمايند؛ اما برخلاف متغيرها قادرند در يك مزان چند داده مختلف را در خود ذخيره كنند.دادههايي كه در يك شيء ذخيره ميگردنـد، خاصـيتهاي (Properties) آن شيء ناميده ميشوند. مثـلاً ميتوان اطلاعات مربوط به افراد از جمله نـام، آدرس، و شماره تلفن آنها را در قالب يك شيء كه Bob نـام دارد و به منظور ذخيرهسازي دادههاي مربوط به فردي بنام Bob تعريف شده است، ميتوانند Bob.address
و Bob.phone باشند.
اشياء همچنين ممكن است داراي يك يا چند متد (Method) باشند. متدها توابعي هستند كه عمليات خود را
بر روي دادههاي شيء مربوط به خود انجام ميدهند. براي مثال شيء مربوط به افراد، ممكن است شامل متدي بنام display() شيء Bob، عبارت Bob.display() بكار برده ميشود.
1ـ2ـ4)جاوااسكريپت از سه نوع شيء پشتيباني ميكند:
1.اشياء درون ساخت (Built-in): اشيايي هستند كه در داخل جاوااسكريپت و به عنـوان جزئي از اين زبان منظور شدهاند. مثال Dateو Math و Array و String.
2.اشياء مرورگر: اشيائي هستند كه نماينـده اجزاء مختلف مرورگر و سند HTML موجود هستند. مثلاً تـابع alert()، در واقع متدي از شيء window ميباشد.
اشياء اختصاصي تعريف شونده (Custom): اشيايي هستند كه توسط طراح صفحه تعريف ميگـردند.
براي مثال شما ميتوانيد يك شيء Person)) تعريف كرده و همانند مثال گذشته، اطلاعات مربوط به افراد
را در آن ذخيره نماييد و يا توابعي براي كار با اين اطلاعات طراحي كنيد.
3ـ4)كنترل حوادث:
همه اسكريپتهادرداخل دستورات<script> قرارنميگيرند.درواقع اسكريپت راميتوان عنوان كنترلگرحوادث نيز بكاربردگرچه اين عبارت، يك اصطلاح برنامهنويسي است اما دقيقاً بهمان معني لغوي خودميباشد:كنترلگرهاي حوادث اسكـريپتهايي هستند كه حوادث (Events) را كنترل ميكنند.
كنترل حوادث در جـاوااسكـريپت نيز روش مشابهي دارد:
كنترلگرهاي حوادث به مرورگر ميفهمانند در برخورد بايك حادثه خاص،چگونه بايد رفتار كند.البته حوادثي كه جاوااسكريپت با آنها سروكار دارد، با حوادث زندگي واقعي تفاوت زيادي دارند. براي مثال “كليك شدن دكمه موس” و يا “پايان يافتن روند برداشت صفحه” از جمله حوادثي هستند كه براي جاوااسكريپت اهميت دارند.
بسياري از حوادث جاوااسكريپت (از جمله كليكهاي موس) بوسيله كاربر ايجاد ميگردند. با رديابي حوادث
و واكنش نشان دادن نسبت به آنها، ميتوان روندعادي اجراي اسكريپتها را رها كرده و روتين مفسر اسكريپتها
را به يك اسكـريپت جديد هدايت نمود.نيازي به تـذكر نيست كه اين تكنيك جزء اساسي اكثـر برنـامههاي جاوااسكريپت را تشكيل ميدهد.
كنترلگرهاي حوادث بااشياء خاصي درمرورگر در ارتباط بوده و در همان دستوري كه شيء مربوطه را تعريف ميكند ذكر ميگردند.مثلاً براي تصويري كه قصد داريدازآن به عنوان يك پيوند استفاده كنيد، ميتوانيد حادثه “حركت نشانگر موس” بر روي آن را به ترتيب زير فعال نماييد:
<img src=”button.gif” onMouseOver=”highlight();”>
همانگونه كه مشاهده ميكنيد عبارتonMouseOver،بصورت يك ويژگي (Attribute) دركناردستور img ذكر شده است. اين كنترلگرهاي حادثه كه بصـورت يك ويـژگي به همراه دستورات HTML قرار ميگيرند، “ويژگيهاي حادثهاي”(Event Attribute) ناميده ميشوند. اين قسمت، مكان ايدهآلي براي استفاده از توابع محسوب ميشود زيرا بكار بردن نام توابع، كاملاً ساده است و از طرف ديگر ميتوان مجموعهاي از دستورات اسكـريپتي را در قالب يك تابع تنظيم كرده و در اثر فعال شدن حادثه مورد نظر، آنها را اجرا نمود.
4ـ4)مخفي كردن اسكـريپتها از مرورگرهاي قديمي :
هنوز كاربران زيادي وجود دارند كه از مرورگرهايي استفاده مينمايند كه با جاوااسكريپت ناسازگار هستند از
آن مهمتر، تعدادي از كاربران گزينه “پشتيباني از جـاوااسكـريپت” را در مرورگر خود خاموش كردهاند تا از مشكلات ايمني برخي از صفحات وب در امان باشند.
از آنجائيكه مرورگرهاي قديمي دستور>< script را نميشناسند، نميتوانند آنرا تفسير نمايند. در اكثر مـوارد، اين مرورگرها به جاي تفسير اسكـريپت، متن آنرا در صفحه نمايش ميدهند.
براي جلوگيري ازاين مشكل،ميتوان اسكريپتها رادرداخل دستورات توضيح HTML (Comment Tags) قرار داد.با اينكار مرورگرهاي قديمي آنرا ناديده گرفته و نمايش نخواهند داد.از طرف ديگر،مرورگرهاي جديد ميدانندكه دستورات توضيحي كه دربين دستورات آغازين و پاياني>< script منظور شدهاند،تنهابراي مخفي كردن اسكـريپت از ديد مرورگرهاي قديميتر در نظر گرفته شدهاند و لذا به تفسير اسكـريپت ادامه ميدهند. همانطوري كه ميدانيد براي نوشتن يك توضيح در سند HTML (كه بايد توسط مرورگر ناديده گرفته شود) كافي است علامت<!--را درابتداوعلامت - -> را در انتهاي آن قرار دهيد. علاوه بر دستورات آغازين و پاياني توضيح درHTML، علامت// نيز به چشم ميخورد.اين علامت، دستور توضيح در جـاوااسكـريپت را تشكيل ميدهد. درواقع با اينكار دستور پاياني توضيح يعني- -> را از ديد مفسر جـاوااسكـريپت نيز مخفي نمودهايم.
مبلغ قابل پرداخت 8,910 تومان