نرگس چنگیزی

مطالب مرتبط با طراحی صفحات وب

چگونگي دريافت پيغام خطا
يکي از مواردي که در نوشتن کدهاي جاوااسکريپت ممکن است زياد با آن برخورد کنيد، دريافت پيغام هاي خطا هنگام اجراي کدها در مرورگر مي باشد، پس بهتر است در همين ابتداي کار با آنها آشنا شويد تا هنگام مشاهده خطا، تجربه کافي براي رفع آن داشته باشيد. خطاهاي جاوااسکريپت را به دو صورت متوجه مي شويد يکي ظاهر شدن مثلثي زرد با يک علامت تعجب در سمت چپ نوار وضعيت مرورگر مانند شکل زير:


 
در بعضي از مرورگرها اين نوار مشاهده نمي شود که مي توانيد براي مشاهده آن به منوي View مرورگر رفته و روي گزينه Status Bar کليک کنيد. حالت ديگر ديدن پيغامهاي خطا، باز شدن يک پنجره در وسط مرورگر است که در اين حالت جزئيات خطاي ايجاد شده را هم مي توانيد مشاهده کنيد. مانند شکل زير:

 


توجه داشته باشيد، در نسخه هاي جديد مرورگر اينترنت اکسپلورر اين پنجره مشاهده نميشود و ابتدا آنرا بايد فعال کنيد. براي فعال کردن آن به منوي Tools مرورگر رفته و گزينه Internet Options را انتخاب کنيد، در پنجره باز شده به قسمت Advanced رفته و گزينه Display a notification about script error را تيک بزنيد، سپس دکمه Ok را زده تا کار شما تأييد شود. بهتر است که قبل از شروع کد نويسي جاوااسکريپت اين عمل را انجام دهيد تا هنگام بروز خطا در صدد رفع آن برآييد که به اين کار اشکال زدايي يا Debugging مي گويند. اگر هم اين گزينه را فعال نکرديد، هنگام بروز خطا مي توانيد بر روي آن مثلث زرد رنگ در نوار وضعيت رفته و دوبار کليک کنيد که همان پنجره اعلان خطا باز خواهد شد


0   |  0 امتياز: 0 | نظر شما: 1 2 3 4 5
برچسب ها: چگونگي,دريافت,پيغام,خطا,جاوااسکريپت,
نوشته شده در سه شنبه 6 / 10ساعت 9:36 توسط نرگس| |

قبل از هر چيز براي يادگيري جاوااسکريپت، شما نياز به دانستن زبان HTML و درک کاملي از طراحي و ساخت صفحات وب بايد داشته باشيد چون جاوااسکريپت يک زبان مجزا از اچ تي ام ال نيست و بايد همراه با کدهاي HTML در يک صفحه بکار رود تا کارآيي داشته باشد.
همانطور که مي دانيد زبان اچ تي ام ال به تنهايي جوابگوي نياز بينندگان وب سايتها نمي باشد چون آنها علاقه خاصي به جذابيتها و ارتباط متقابل ميان خود و صفحات وب دارند که اچ تي ام ال نمي تواند جذابيت قابل توجهي به يک صفحه بدهد و يا با يک کاربر ارتباط برقرار کند. پس براي برطرف کردن اين مشکلات، صفحات وب نيازمند يک زبان قوي تر مي باشد که به همين منظور زبان جاوااسکريپت خلق شد.
جاوااسکريپت توسط شرکت Netscape اختراع شد و به عنوان اولين زبان اسکريپت نويسي در وب توسعه يافت که در حال حاضر پرکاربردترين و محبوب ترين زبان اسکريپت نويسي در دنيا مي باشد که يکي از دلايل آن، پشتيباني دو مرورگر معروف وب، Internet Explorer و Netscape Navigator از اين زبان مي باشد. نا گفته نماند که شرکت مايکروسافت هم براي اينکه از نت اسکيپ در اين زمينه عقب نماند، نسخه مربوط به خود را بنام Jscript توليد کرد.(البته همان نسخه جاوااسکریپت با اندکی تفاوت)

 

تفاوت جاوااسکريپت با جاوا

تقريباً در هر جا که آموزش جاوااسکريپت هست اين مطلب هم مشاهده مي شود چون خيلي ها فکر مي کنند که اين دو با هم يکي بوده يا حداقل اينکه جاوااسکريپت ساده شده زبان جاوا براي کاربرد در وب مي باشد که اصلاً اين چنين نيست.
همانطور که ميدانيد جاوااسکريپت متعلق به شرکت نت اسکيپ مي باشد اما زبان جاوا متعلق به شرکت Sun Microsystems است. جاوااسکريپت در اصل يک زبان اسکريپت نويسي است نه يک زبان برنامه نويسي کامپيوتر، شايد بتوان اسکريپتها را يک نوع زبان برنامه نويسي خيلي سبک و ساده ناميد اما جاوا يک زبان برنامه نويسي کاملاً پيچيده مانند زبان C است. تفاوت ديگر آنها اينست که جاوااسکريپت توسط يک برنامه مفسر يعني interpreter  در مرورگر تعريف و تفسير شده تا قابل اجرا باشد و حتماً هم اين کار در مرورگر انجام مي شود اما برنامه هاي جاوا بايد توسط يک کامپايلر Compiler ، کامپايل شده که کامپايل شدن يعني جمع آوري اطلاعات مورد نظر و ترجمه آن اطلاعات به زبان قابل فهم براي کامپيوتر و تبديل آن به يک برنامه کاربردي واحد و مستقل براي کاربر را گويند. به همين دليل برنامه هاي جاوا را که اپلت applet مي نامند، مستقل اجرا مي شوند. البته اپلتهاي جاوا را مي توان در صفحات وب هم گنجاند.


در يک جمله مي توان گفت که جاوااسکريپت فقط در صفحات وب تأثيرگذار است اما زبان جاوا براي خلق برنامه هاي پيچيده در کامپيوتر ساخته شده است.


 


0   |  0 امتياز: 0 | نظر شما: 1 2 3 4 5
برچسب ها: تفاوت,جاوااسکريپت,جاوا,Sun Microsystems ,Sun Microsystems ,Internet Explorer ,
نوشته شده در دوشنبه 28 / 9ساعت 2:37 توسط نرگس| |

اکنون که يک مفهومي از زبان جاوااسکريپت را در ذهن داريد، بايد ببينيم که با آن چکار مي توانيم انجام دهيم يا بهتر بگويم که جاوااسکريپت چه کاري براي ما انجام مي دهد و چه قابليتهايي را در مرورگر ايجاد مي کند.


در حقيقت جاوااسکريپت يک ابزار براي طراحان وب و نويسندگان کدهاي HTML مي باشد. جاوااسکريپت داراي ترکيباتي ساده نسبت به زبانهاي برنامه نويسي است که براحتي مي توان آنها را داخل کدهاي اچ تي ام ال يک صفحه قرار داد و از آنها استفاده کرد. يکي از قابليتهاي ويژه جاوااسکريپت رايگان بودن آن است که اگر شما زبان HTML را بدانيد، مي توانيد با کمي دانستن جاوااسکريپت کدهاي آماده که بيش از 2000 نوع از آنها در وب وجود دارد را در صفحات خود بکار گيريد.


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


يکي از بهترين ويژگيهاي جاوااسکريپت، اعتبار بخشيدن به اطلاعات مي باشد مثلاً شما يک فرمي براي ارتباط با کاربر خود ساخته ايد و مي خواهيد قبل از اينکه آن اطلاعات به سرور فرستاده شود، بازبيني شده تا اگر مشکلي وجود داشته باشد به کاربر اطلاع داده شود تا در صدد رفع آن برآيد. چون جاوااسکريپت اصطلاحاً Client side است، يعني در سيستم کاربر اجرا شده و مستقل از وب سرور است مي تواند ترافيک روي سرور را کم کرده که اين موضوع يک امتياز مثبت براي ميزبانان وب محسوب مي شود.


0   |  0 امتياز: 0 | نظر شما: 1 2 3 4 5
برچسب ها: جاوااسکريپت,ابزار ,وب,کد, HTML,Client side ,Client side ,قابليت,
نوشته شده در دوشنبه 28 / 9ساعت 2:36 توسط نرگس| |

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

دسته اول از آنها در قسمت سر يعني head جاي مي گيرند.

دسته دوم در قسمت بدنه کدهاي اچ تي ام ال نوشته می شوند.

دسته سوم هم در يک فايل جداگانه و خارج از کدهاي html  با پسوند js قرار مي گيرند.
 
نوشتن اسکريپت در قسمت head
کليه کدهاي جاوااسکريپت به محض باز شدن يک صفحه وب در مرورگر اجرا مي شوند اما گاهي اوقات ما نياز داريم تا يک اسکريپت زودتر از کدهاي ديگر اجرا شده و يا آماده باشد تا در صورت لزوم فراخواني شود. که اينگونه کدها را بايد در قسمت سر و ما بين تگ head بنويسيم. بطور مثال شما نياز به اين داريد که به محض ورود کاربر به صفحه در همان ابتدا پيغامي ظاهر شود و تا کاربر آنرا تأييد نکرده است صفحه تکميل نشود. اسکريپتهاي قسمت سر هميشه آماده اجرا و يا آماده پاسخ به اتفاقي در صفحه وب هستند، که در اين مورد شما مطمئن هستيد اسکريپت مورد نظر قبل از هر چيزي در صفحه، اجرا خواهد شد. براي نوشتن کدهاي جاوااسکريپت بصورت زير عمل مي کنيد:


<html>
<head>
<title> ... </title>
<script language="javascript" type="text/javascript">
...... javascript codes ......
<script/>
<head/>


نوشتن اسکريپت در قسمت بدنه
هنگاميکه نياز داشته باشيد تا کدهاي جاوااسکريپت در بدنه فايل html اجرا شود آنها را در قسمت body صفحه وارد مي کنيد،


<html>
<head>
<head/>
<body>
<script language="javascript" type="text/javascript">
....... javascript codes ......
<script/>
<body/>
<html/>


شما حتي مي توانيد توسط کدهاي جاوااسکريپت قسمتي از يک صفحه را بسازيد يعني با ترکيب جاوااسکريپت و تگهاي اچ تي ام ال در body يک عنصر در صفحه وارد کنيد. کدهاي زير را بنويسيد و اجرا کنيد:


<html>
<head>
</head>
<body>
<script language="javascript" type="text/javascript">
document.write("<h1 align='center'> Hello my friends! </h1>");n
</script>
</body>
</html>


اجراي کد
لازم بذکر است که شما مي توانيد براي نظم دادن و جلوگيري از شلوغي قسمت بدنه يک اسکريپت بصورت function در قسمت head تعريف کنيد و در قسمت بدنه آنرا فراخواني کنيد .


فايل خارجي جاوااسکريپت

شما مي توانيد براي حفظ نظم تگهاي اچ تي ام ال در يک صفحه وب و يا براي جلوگيري از تکرار يک اسکريپت در صفحات يک وب سايت، کدهاي جاوااسکريپت را در يک فايل جداگانه نوشته و با پسوند js آنها را ذخيره کنيد سپس در هر قسمت و هر صفحه اي که لازم بود، وارد کنيد. خط زير را در برنامه Notepad نوشته و آنرا به اسم test.js ذخيره کنيد:


document.write(" JavaScript external file ")
n


حالا يک فايل اچ تي ام ال بسازيد و تگهاي زير را در آن وارد کنيد سپس با يک اسم دلخواه آنرا در همان پوشه که فايل جاوااسکريپت را ذخيره کرده ايد قرار دهيد:


<html>
<head>
</head>
<body>
<script language="javascript" type="text/javascript" src="test.js">
<script/>
<body/>
<html/>


اگر مراحل را بدرستي انجام داده باشيد، جمله زير را در مرورگرتان مشاهده خواهيد کرد.


JavaScript external file


دقت کنيد که اگر فايل جاوااسکريپت را در پوشه اي جدا از فايل html قرار مي دهيد حتماً در خصوصيت src آدرس دقيق آنرا بنويسيد.


1   |  0 امتياز: 0 | نظر شما: 1 2 3 4 5
برچسب ها: کد,جاوااسکريپت ,head,بدنه,javascript,codes,document,write, JavaScript, external, file,
نوشته شده در سه شنبه 13 / 10ساعت 1:24 توسط نرگس| |

Date Object

يکي از ويژگي هايي که جاوااسکريپت دارد جمع آوري اطلاعات از سيستم کاربر و نمايش آنها در صفحات وب است. همانطور که ميدانيد زبان اچ تي ام ال به تنهايي قادر به انجام چنين کاري نيست اما با کمک زبانهاي ديگر تحت وب مانند Javascript ، مي تواند تا حدودي اين مشکل را برطرف کند. شئ هايي در جاوااسکريپت وجود دارند که توسط متدهاي مختلف، اطلاعات مورد نياز را از سيستم گرفته و در اختيار کاربران قرار مي دهند. يکي از اين object ها و شئ ها ، Date مي باشد که به کمک آن مي توانيم تاريخ و زمان سيستم را هنگام اجراي کد دريافت کنيم، سپس آنرا نمايش دهيم و يا اينکه در يک متغير ذخيره کنيم تا در صورت لزوم از آن بهره گيريم. اين object بصورت زير تعريف مي شود:


()new Date


به طرز نوشتن آن دقت کنيد که غير از اين باشد با پيغام خطا روبرو خواهيد شد چون جاوااسکريپت زبان حساسي است پس هر جا که حروف بزرگ است بايد بزرگ و هر جا کوچک است بايد کوچک نوشته شود. در آخر هم پرانتز مي گذاريد که در قسمتهاي بعدي همين صفحه کارآيي آنها را درک خواهيد کرد.

اين شئ يک رشته متني شامل روز، ماه، سال، ساعت، دقيقه، ثانيه و اختلاف زماني با UTC را برميگرداند. UTC مخفف Coordinated Universal Time مي باشد که به آن Zulu time هم مي گويند و مطابق با استاندارد جهاني زمان است.
کد زير را در يک سند اچ تي ام ال وارد کنيد و پس از ذخيره، آنرا اجرا کنيد:


<script language="javascript" type="text/javascript"k>
document.write ( new Date() )n
<script/>


 
متدهاي شئ Date

بعد از ساختن شئ جديد Date ، مي توانيد توسط متدهاي مربوط به آن جزئيات ديگري از اين شئ دريافت کنيد. اين شئ داراي هفت متد اصلي ميباشد که بيشترين کاربرد را دارند. اين متدها عبارتند از:


getDate(), getDay(), getMonth(), getYear(), getHours(), getMinutes(), getSeconds()
n


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

بطور مثال:
شما دقيقاً درساعت  14:23:23 وارد اين صفحه شديد.
که اسکريپت آن براي برگرداندن زمان مورد نظر به صورت زير مي باشد:


<script language="javascript" type="text/javascript"n>
var vorood = new Date()n
document.write( vorood.getHours() + ":" + vorood.getMinutes() + ":" + vorood.getSeconds() )n
<script/>


ابتدا شئ Date را تعريف کرده و در يک متغير به نام vorood  ذخيره مي کنيم تا بکار بردن آن در قسمتهاي بعدي راحت تر باشد، سپس از شئ document و متد write براي چاپ نتيجه در صفحه وب استفاده کرده و متدهاي لازم براي برگرداندن اطلاعات مورد نياز را مي نويسيم. دقت کنيد که براي ترکيب متدها از علامت + استفاده کرديم، اين علامت باعث ترکيب و پيوند بين اجزاي يک اسکريپت مي شود که خاصيت آنرا در بخش بعدي operator ها يعني عملگرها توضيح خواهم داد.

ازعلامت : هم بين ساعت، دقيقه و ثانيه استفاده شده و چون مي خواستيم که اين علامت عيناً در صفحه نوشته شود آنرا بين علامت نقل قول يعني "" گذاشتيم. در ضمن مي توانيد از کدهاي اچ تي ام ال هم استفاده کنيد تا زمان به شکل دلخواه شما در صفحه چاپ شود. بطور مثال اگر بخواهيد که صورت Bold در صفحه نوشته شود، به شکل زير عمل مي کنيد:


document.write("<b>"+ vorood.getHours()+ ":"+ ...... + "</b>")
n


 
نکته: هنگاميکه از متد getMonth() براي برگرداندن عدد ماه استفاده مي کنيد بايد هميشه آنرا بعلاوه عدد يک کنيد چون جاوااسکريپت اولين ماه ميلادي را برابر با عدد صفر قرار مي دهد.


document.write( new Date().getMonth()+1 )
n


در مورد متد getYear() هم اگر مي خواهيد نتيجه کامل برگردد يعني سال بصورت چهاررقمي نوشته شود بايد از متد getFullYear() استفاده کنيد.
اگر هم بخواهيد تمام مقادير بر اساس UTC برگردانده شوند، بايد اين کلمه را در وسط متد مورد نظر وارد کنيد. بدين صورت:


getUTCFullyear(), getUTCDate(), getUTCHours(), getUTCMinutes()n


 
تنظيم تاريخ و زمان

شئ Date به غير از متدهاي ذکر شده در بالا، داراي متدهاي ديگري است که توسط آنها مي توانيد زمان و تاريخي را بصورت دلخواه تنظيم کنيد. در اينگونه متدها بجاي کلمه get بايد از set استفاده کنيد و مقدار معيني را در پرانتز وارد کنيد. بطور مثال مي خواهيم همين موقع را در سال 2008 داخل صفحه چاپ کنيم.


<script language="javascript" type="text/javascript"n>
var zaman = new Date()n
zaman.setFullYear(2008)n
document.write ( zaman )n
<script/>


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


Sun Jun 29 14:23:23 UTC+0430 2008

 


0   |  0 امتياز: 0 | نظر شما: 1 2 3 4 5
برچسب ها: تاريخ,زمان,جاوااسکريپت,document,write ,javascript,متد,شئ,Date,
نوشته شده در جمعه 30 / 10ساعت 16:35 توسط نرگس| |


عملگر چيست؟

عملگرها يا همان operator ها،  سمبلي براي نشان دادن يک علامت مشخص هستند که هر کدام از آنها وظيفه خاصي دارند، مثلاً علامت + نشان دهنده جمع کردن است. در کل، عملگرها در زبانهاي برنامه نويسي بسيار کاربرد دارند و همچنين در جاوااسکريپت که توسط آنها مي توان عملياتي را بر روي اعداد و رشته هاي متني انجام داد. در اين صفحه با انواع عملگرها آشنا مي شويد ولي نگران کاربرد آنها نباشيد چون در بخشهاي بعدي بيشتر به آنها نياز خواهيم داشت و مفهوم اصلي آنها را درک خواهيد کرد.
 
انواع عملگرها

عملگرها در جاوااسکريپت به چند دسته تقسيم مي شوند:

عملگرهاي رياضي يا Arithmetic Operators: اين نوع عملگرها چهار عمل اصلي در رياضي را انجام مي دهند. علاوه بر آنها يک عملگر وظيفه نمايش خارج قسمت يک تقسيم را بعهده دارد و دو عملگر ديگر هر کدام به ترتيب يک واحد اضافه و يک واحد کم مي کنند که در جدول زير مشخص شده اند.

 

عملگرهای ریاضی
 

عملگرهاي زير به نام Assignment Operators معروف هستند که يک مقداري را به يک متغير نسبت مي دهند.


 Assignment Operators

عملگرهاي مقايسه اي: اين نوع عملگرها مقدارهاي دو متغير را با هم مقايسه مي کنند و نتيجه اين مقايسه يا درست است يا غلط که در دستورات شرطي جاوااسکريپت بسيار کاربرد دارند.



عملگرهای مقایسه ای 


عملگرهاي منطقي: در اين مدل سه نوع عملگر وجود دارند که در حقيقت يک يا چند نتيجه را بررسي مي کنند و جواب را بازمي گردانند. اين عملگرها به اين شکل مي باشند:


&& , || , !


عملگر && در حقيقت مانند حرف اضافه " و " در فارسي عمل مي کند:


x = 5
y = 3
( x < 10 && y > 1)


در اينجا اگر مقدار متغير x کوچکتر از عدد 10 باشه و y بزرگتر از 1 باشه، نتيجه true بازگردانده مي شود. چون حرف و آمده است پس بايد دو طرف عملگر جواب درست باشد تا در مجموع نتيجه درست در بيايد.
عملگر || مانند کلمه " يا " در فارسي است:


x = 6
y = 3
( x == 5 || y == 5 )


همانطور که حدس زده ايد، نتيجه غلط است يعني false بازگردانده مي شود. چون يا آمده است پس حداقل يکي از طرفين عملگر بايد درست باشد تا نتيجه درست در بيايد اما اينجا هر دو طرف غلط است که در مجموع نتيجه غلط است. اما در حالت زير نتيجه درست بازگردانده مي شود:


( x == 5 || y < 5 )


عملگر ! در حقيقت يک عمليات و معادله را بررسي مي کند اگر جواب آن معادله درست نباشد نتيجه true يا همان درست را برميگرداند:


x = 5
y = 4
 ( x == y )
!


در اينجا در کل نتيجه درست است. حالا ببينيم که چه اتفاقي افتاده است، اول يک نگاهي به داخل پرانتز بياندازيد. شرط درستي در اين است که x برابر با y باشد، اما اينچنين نيست چون مقادير با هم متفاوت هستند ولي چون عملگر ! آمده است پس شرط درستي در اينست که نتيجه داخل پرانتز غلط باشد چون گاهي اوقات ما نياز داريم که در اسکريپت دو چيز را با هم مقايسه کنيم و اگر نتيجه غلط بود ادامه دهيم که اين علامت بکار ما مي آيد.
 
کاربرد عملگرها در متن
در بالا تمام مثالها براي اعداد بود ولي گاهي اوقات از بعضي از عملگرها مي توانيم براي رشته هاي متني هم استفاده کنيم:


strText01 = " Hello "n
strText02 = "my friends!"n
document.write ( strText01 + strText02
) n



نوشته شده در جمعه 30 / 10ساعت 17:09 توسط نرگس| |