Professional Documents
Culture Documents
اﺷﺮف -:
ﻟﻤﺎذا ﻻ ﺗﻜﻔﻲ ﻟـ HTMLو ﻟﻤﺎذا ﻧﺤﺘﺎج إﻟﻰ ﻟﻐﺎت اﻟﻨﺼﻮص ) ( script language
ﻣﺜﻞ اﻟﺠﺎﻓﺎ ﺳﻜﺮﯾﺒﺖ .
أن ﻟﻐﺎت اﻟﻨﺼﻮص ﻣﻨﻬﺎ اﻟﺠﺎف ﺳﻜﺮﯾﺒﺖ ﺗﺤﻮل ﻣﻮﻗﻊ اﻟﻮب إﻟﻰ ﻣﻮﻗﻊ ﯾﺘﻔﺎﻋﻞ ﻣﻊ اﻟﻤﺴﺘﺨﺪم ﻣﻦ إﺿﺎﻓﺎت أزرار
وﻧﻤﺎذج ﺗﺄﺧﺬ ﺑﯿﺎﻧﺎت ﻣﻦ اﻟﻤﺴﺘﺨﺪم وﺗﺤﻮﻟﻬﺎ إﻟﻰ ﻧﻤﺎذج أﺧﺮى أو ﺗﺮﺳﻠﻬﺎ ﺑﺎﻟﺒﺮﯾﺪ اﻹﻟﻜﺘﺮوﻧﻲ أو ﺗﺠﺮي ﻋﻠﯿﻬﺎ
ﻋﻤﻠﯿﺎت ﺣﺴﺎﺑﯿﺔ ﻟﯿﺴﺖ ﺑﺴﯿﻄﺔ أﻧﻬﺎ ﺑﺎﺧﺘﺼﺎر ﺗﺤﻮل اﻟﺼﻔﺤﺔ إﻟﻰ ﻣﺎ ﯾﺴﻤﻰ ﺑﺼﻔﺤﺎت اﻟﻮب اﻟﺪﯾﻨﺎﻣﯿﻜﯿﺔ أو
ﺻﻔﺤﺎت اﻟﻮب اﻟﺘﻔﺎﻋﻠﯿﺔ ﻫﻮ ﻣﺎﻻ ﺗﻘﺪﻣﻪ ﻟﻐﺔ . HTML
وﻻ ﻧﻨﺴﻰ ﻣﻦ اﻟﻨﻘﺎط اﻟﻤﻬﻤﺔ اﻟﺘﻲ ﯾﺠﺐ ﻣﻌﺮﻓﺘﻬﺎ أن ﺗﻨﻔﯿﺬ اﻟﺒﺮﻧﺎﻣﺞ اﻟﻤﻜﺘﻮب ﺑﻠﻐﺔ Java Scriptﻫﻮ ﻣﻦ
اﺧﺘﺼﺎص اﻟﻤﺘﺼﻔﺢ ) ( Browserو اﻟﺬي ﯾﻨﻔﺬﻫﺎ ﺳﻄﺮ ﺳﻄﺮ ) وﻫﺬا ﻣﺎ ﯾﻄﻠﻖ ﻋﻠﯿﻪ ( Interpreterوﻟﯿﺲ
ﻋﻦ ﻃﺮﯾﻖ ﺗﺮﺟﻤﺘﻬﺎ ﺗﺠﻤﯿﻌﯿﺎً وﻫﺬا ﻣﺎ ﯾﺤﺪث ﻓﻲ ﻟﻐﺎت اﻟﺒﺮﻣﺠﺔ ﻋﺎﻟﯿﺔ اﻟﻤﺴﺘﻮى ) وﻫﺬا ﻣﺎ ﯾﻄﻠﻖ ﻋﻠﯿﻪ
.(Compiler
ﺑﺮﻧﺎﻣﺞ ﺟﺎﻓﺎ ﺳﻜﺮﯾﺒﺖ ﻫﻮ ﺟﺰء ﯾﺘﻢ وﺿﻌﻪ داﺧﻞ ﻟﻐﺔ HTMLﻟﺰﯾﺎدة ﻓﺎﻋﻠﯿﺘﻬﺎ ﻓﻌﻨﺪ ﺗﺼﻔﺢ ﻣﻮﻗﻊ أو اﺳﺘﺪﻋﺎء
ﺻﻔﺤﺔ ﻣﺤﺪدة ﻣﻜﺘﻮب ﺑﺪاﺧﻠﻬﺎ Java Script codeﯾﺘﻢ إﻧﺰاﻟﻪ إﻟﻰ ﺟﻬﺎزك وﻋﻨﺪ ﺣﺪوث ﺣﺪث ﻣﻌﯿﻦ ﻣﺜﻞ
اﺳﺘﺪﻋﺎء ﺑﺮﻧﺎﻣﺞ ﺟﺎﻓﺎ ﻟﻠﺘﻨﻔﯿﺬ ﻋﻨﺪ اﻟﻀﻐﻂ ﻋﻠﻰ زر ﻣﻌﯿﻦ أو ﻋﻨﺪ ﺣﺮﻛﺔ ﻟﻠﻤﺎوس ﯾﺘﻢ ﺗﺮﺟﻤﺔ اﻟﺒﺮﻧﺎﻣﺞ وﺗﻨﻔﯿﺬه
ﺳﻄﺮ ﺑﺴﻄﺮ ﺣﺘﻰ ﯾﻨﺘﻬﻲ ﻛﻤﺎ ذﻛﺮﻧﺎ ﺳﺎﺑﻘﺎً.
١
ﻣﺤﻤﺪ ﺻﺪﻳﻖ ﺣﺴﻦ
اﻟﺸﻜﻞ اﻟﻌﺎم اﻟﺬي ﺳﯿﻜﻮن ﻋﻠﯿﻪ ﺑﺮﻧﺎﻣﺞ ﺟﺎﻓﺎ ﺳﻜﺮﯾﺒﺖ :
><HTML
><HEAD
><TITLE ﯾﺘﻢ ﻫﻨﺎ وﺿﻊ ﻋﻨﻮان اﻟﺼﻔﺤﺔ ></TITLE
>”<SCRIPT LANGUAGE=”JAVASCRIPT
<!--
><BODY
ﺗﻌﻠﯿﻤﺎت أﻟـ HTMLﯾﺘﻢ ﻛﺘﺎﺑﺘﻬﺎ ﻫﻨﺎ ﻓﻲ ﻫﺬه اﻟﻤﻨﻄﻘﺔ و أﯾﻀﺎ اﺳﺘﺪﻋﺎء ﺑﺮﻧﺎﻣﺞ اﻟﺠﺎف ﺳﻜﺮﯾﺒﺖ
></BODY
></HTML
ﻣﻼﺣﻈﺎت:
>”<SCRIPT LANGUAGE=”JAVASCRIPT
ﻫﺬا اﻟﺴﻄﺮ ﯾﺠﺐ أن ﯾﻜﻮن أول ﺳﻄﺮ ﻓﻲ أي ﻛﻮد ) (SCRIPTﺟﺎﻓﺎ ﺳﻜﺮﯾﺒﺖ ﺣﯿﺚ أﻧﻪ ﯾﻨﺒﻪ اﻟﺠﺰء اﻟﺨﺎص
ﺑﺘﺮﺟﻤﺔ اﻟﺼﻔﺤﺔ ﺑﺄن ﻣﺎ ﺳﯿﺘﺒﻊ ﻫﺬا اﻷﻣﺮ ﻫﻮ Java Scriptوأن ﻋﻠﯿﻪ اﻻﺳﺘﻌﺪاد ﻟﺘﻨﻔﯿﺬ ﺑﺮﻧﺎﻣﺞ ﯾﺤﺘﻮي ﻋﻠﻰ
ﺳﺒﯿﻞ اﻟﻤﺜﺎل ﺟﻤﻠﺔ ﺷﺮﻃﯿﻪ ) ( if elseأو ﺟﻤﻠﺔ ﺗﻜﺮار ) ( Loopوﻏﯿﺮه ﻣﻦ اﻟﺠﻤﻞ و اﻟﺘﻲ ﯾﺤﺘﻮي ﻋﻠﯿﻬﺎ
أي ﺑﺮﻧﺎﻣﺞ .
أن اﻟﺮﻣﺰ اﻟﺘﺎﻟﻲ <!--ﯾﻘﻮم ﺑﺈﺧﻔﺎء ﻛﻮد اﻟﺠﺎﻓﺎ ﺳﻜﺮﯾﺒﺖ ﻣﻦ اﻟﻤﺴﺘﻌﺮض أو اﻟﻤﺘﺼﻔﺢ اﻟﺬي ﻻ ﯾﺪﻋﻢ ﻟﻐﺔ اﻟﺠﺎﻓﺎ
ﺳﻜﺮﯾﺒﺖ وﺑﻌﺪ اﻻﻧﺘﻬﺎء ﻣﻦ ﻛﺘﺎﺑﺔ اﻟﻜﻮد ﯾﺘﻢ وﺿﻊ اﻟﺮﻣﺰ اﻟﺘﺎﻟﻲ > . --
></SCRIPT
إذن ﻫﺬا ﻫﻮ آﺧﺮ ﺳﻄﺮ ﻓﻲ أي ﻛﻮد SCRIPTوﻫﺬه اﻟﺨﻄﻮة ﺗﻨﺒﻪ اﻟﻤﺘﺼﻔﺢ إﻟﻲ ﻧﻬﺎﯾﺔ اﻟﻜﻮد ﻛﻤﺎ ﻫﻮ ﻣﻮﺿﺢ
ﻓﻲ اﻟﺸﻜﻞ اﻟﻌﺎم ،ﻟﻨﺄﺧﺬ ﻣﺜﺎل ﻟﻜﻲ ﺗﺘﻀﺢ اﻟﺮؤﯾﺎ .
٢
ﻣﺤﻤﺪ ﺻﺪﻳﻖ ﺣﺴﻦ
واﻟﯿﻚ ﻫﺬا اﻟﻤﺜﺎل اﻟﺒﺴﯿﻂ :
ﻓﻲ اﻟﺒﺪاﯾﺔ ﺳﻮف ﻧﻘﻮم ﺑﺸﺮح ﻫﺬا اﻟﻜﻮد ﺛﻢ ﻧﻘﻮم ﺑﺸﺮح ﺧﻄﻮات ﺗﻨﻔﯿﺬه ﻻﺣﻘﺎ ﻟﻨﺒﺪاء اﻵن.
No Statements
١ ><html
٢ ><head
٣ ><title>First Example</title
٤ ></head
٥ ><body bgcolor=#f0f0f0
٦ >"<SCRIPT LANGUAGE="javascript
٧ <!--
٨ )">document.write("<FONT COLOR='Red'>Welcome To Java script</FONT
٩ ></Script
١٠ >--
١١ ></body
١٢ ></html
و اﻟﺬي ﯾﺪل ></html -١أوﻻ ﯾﺘﻢ وﺿﻊ tagاﻟﻤﺴﻤﻰ واﻟﺬي ﯾﺪل ﻋﻠﻰ ﺑﺪاﯾﺔ اﻟﺼﻔﺤﺔ > <htmlواﻟـ tag
ﻋﻠﻰ ﻧﻬﺎﯾﺔ اﻟﺼﻔﺤﺔ وﯾﺘﻢ وﺿﻊ ﺑﺎﻗﻲ اﻷواﻣﺮ ﻟﻐﺔ .HTML
و ><title ٢و ٣و <head> -٤و > </headﯾﻮﺿﻊ ﺑﯿﻨﻬﻤﺎ ﻋﻨﻮان اﻟﺼﻔﺤﺔ .وأﻣﺎ ﺑﺎﻟﻨﺴﺒﺔ ﻟـ
> </titleﺗﺘﯿﺢ ﻟﻚ ﻫﺬه اﻟﻌﻼﻣﺔ أن ﺗﻌﻄﻲ اﻟﺼﻔﺤﺔ ﻋﻨﻮاﻧﺎ واﺿﺤﺎ ﻣﻤﯿﺰا وﯾﻈﻬﺮ ﻫﺬا اﻟﻌﻨﻮان ﻋﻠﻰ ﻧﺎﻓﺬة
اﻟﻤﺴﺘﻌﺮض وﯾﺠﺐ أن ﯾﺤﺘﻮي ﻋﻠﻰ اﻟﻌﻨﻮان ﻋﻠﻰ ﺣﺮوف و أرﻗﺎم ﻓﻘﻂ.
<body bgcolor=#f0f0f0> -٥و > </bodyﺣﯿﺚ ﯾﺘﻢ ﻛﺘﺎﺑﺔ داﺧﻞ ﻫﺬا اﻟﺠﺰء ﻣﺤﺘﻮﯾﺎت ﺻﻔﺤﺔ اﻟﻮﯾﺐ
اﻟﻔﻌﻠﯿﺔ ﻣﺜﻞ اﻟﺠﺪاول و اﻟﻨﻤﺎذج و اﻟﺼﻮر و اﻟﺘﻲ ﺳﯿﺮاﻫﺎ اﻟﺰوار ﻟﻬﺬه اﻟﺼﻔﺤﺔ أﻣﺎ ﺟﺰﺋﯿﺔ
bgcolor=#f0f0f0ﻓﻬﻲ ﺗﻘﻮم ﺑﻮﺿﻊ ﻟﻮن ﻟﺼﻔﺤﺔ اﻟﻮﯾﺐ و أن اﻟﻘﯿﻤﺔ #f0f0f0ﻫﻲ ﻗﯿﻤﺔ اﻟﻠﻮن ﺑﺎﻟﻨﻈﺎم
اﻟﺴﺖ ﻋﺸﺮي.
-٦ﻫﺬا اﻟﺴﻄﺮ ﯾﺠﺐ أن ﯾﻜﻮن أول ﺳﻄﺮ ﻓﻲ أي ﻛﻮد ﺟﺎﻓﺎ ﺳﻜﺮﯾﺒﺖ ﺣﯿﺚ أﻧﻪ ﯾﻨﺒﻪ اﻟﻤﺘﺼﻔﺢ ﺑﺄن ﻣﺎ ﺳﯿﺘﺒﻊ ﻫﺬا
اﻷﻣﺮ ﻫﻮ Javascriptﻛﻤﺎ ﺗﻢ ﺷﺮﺣﻪ ﻓﻲ اﻟﺼﻔﺤﺔ اﻟﺴﺎﺑﻘﺔ .
٧و -١٠ﻛﻤﺎ ذﻛﺮا ﺳﺎﺑﻘﺎ ﻓﺄن اﻟﺮﻣﺰ اﻟﺘﺎﻟﻲ <!--ﯾﻘﻮم ﺑﺈﺧﻔﺎء ﻛﻮد اﻟﺠﺎﻓﺎ ﺳﻜﺮﯾﺒﺖ ﻣﻦ اﻟﻤﺴﺘﻌﺮض أو
اﻟﻤﺘﺼﻔﺢ اﻟﺬي ﻻ ﯾﺪﻋﻢ ﻟﻐﺔ اﻟﺠﺎﻓﺎ ﺳﻜﺮﯾﺒﺖ وﺑﻌﺪ اﻻﻧﺘﻬﺎء ﻣﻦ ﻛﺘﺎﺑﺔ اﻟﻜﻮد ﯾﺘﻢ وﺿﻊ اﻟﺮﻣﺰ اﻟﺘﺎﻟﻲ > . --
وﻫﻮ اﻟﺬي ﯾﺪل اﻟﻤﺘﺼﻔﺢ أﻧﻪ ﻧﻬﺎﯾﺔ ﺑﺮﻧﺎﻣﺞ اﻟﺠﺎف ﺳﻜﺮﯾﺒﺖ . ></Script -٩
وأﯾﻀﺎ ﯾﺘﻢ ﻏﻠﻖ اﻟﻜﻮد اﻟﺨﺎص ﺑﺎﻟﺼﻔﺤﺔ ></body ﺑﺎﺳﺘﺨﺪام ><body ١١و -١٢ﯾﺘﻢ إﻏﻼق ﺟﺴﻢ اﻟﺼﻔﺤﺔ
> <htmlﺑﺎﺳﺘﺨﺪام >. </html
٣
ﻣﺤﻤﺪ ﺻﺪﻳﻖ ﺣﺴﻦ
ﻣﻼﺣﻈﺎت ﯾﺠﺐ ﻣﺮاﻋﺎﺗﻬﺎ :
ﺷﻜﻞ اﻷﻣﺮ ﻫﻜﺬا وﯾﺠﺐ أن ﯾﻜﻮن داﺋﻤﺎ ﻫﻜﺬا ...دﻋﻨﺎ ﻧﻔﺮض أﻧﻚ ﻧﺴﺨﺖ ﻫﺬا اﻟﻜﻮد ) (SCRIPTوﻟﺼﻘﺘﻪ ﻓﻲ
ﻣﻌﺎﻟﺞ ﻧﺼﻮص ذو ﺣﺪود ﺿﯿﻘﺔ ...ﺑﻤﻌﻨﻲ أﻧﻚ ﻋﻨﺪﻣﺎ ﻟﺼﻘﺘﻪ ﻇﻬﺮ ﻫﻜﺬا :
)"
ﻓﻲ ﻫﺬه اﻟﺤﺎﻟﺔ أﻧﺖ ﻏﯿﺮت ﺷﻜﻞ اﻷﻣﺮ )ﻻﺣﻆ أن اﻟﻘﻮس اﻟﺬي ﯾﻨﻬﻲ اﻷﻣﺮ ﻗﺪ أﻧﺘﻘﻞ ﺳﻄﺮا ﻷﺳﻔﻞ( وﻟﻦ ﯾﻌﻤﻞ ﻫﺬا
اﻟﻜﻮد وﯾﻜﻮن ﻗﺪ ﺣﺪث ﺧﻄﺄ .إذا ﻓﻔﻲ أﻛﻮد اﻟﺠﺎﻓﺎ ﺳﻜﺮﯾﺒﺖ ﯾﺠﺐ ﻣﺮاﻋﺎة اﻟﺸﻜﻞ واﻟﻤﺴﺎﻓﺎت ﻋﻠﻲ ﻋﻜﺲ
اﻟـ .HTML
ﻋﻨﺪ ﻛﺘﺎﺑﺔ ﻛﻮد ﺟﺎﻓﺎ ﺳﻜﺮﯾﺒﺖ ﯾﺠﺐ أن ﻧﺒﺪأ داﺋﻤﺎ ﺑـﺎﻟﺠﻤﻠﺔ اﻟﺘﺎﻟﯿﺔ : •
>"<SCRIPT LANGUAGE="javascript
></SCRIPT
ﺑﯿﻦ ﻋﻼﻣﺘﻲ اﻟﺘﻨﺼﯿﺺ اﻟﻤﺰدوﺟﺔ اﺳﺘﺨﺪم ﻋﻼﻣﺎت ﺗﻨﺼﯿﺺ ﻣﻔﺮدة ﻋﻨﺪ اﻟﺤﺎﺟﺔ . •
أن ﻧﺒﺪأ ﺑﺎﻟﻜﺎﺋﻦ ) (Objectاﻟﺬي ﻧﺮﯾﺪ إﺟﺮاء اﻷﻣﺮ ﻋﻠﯿﻪ ﺛﻢ ﺑﻌﺪ اﻟﻜﺎﺋﻦ ﯾﺄﺗﻲ اﻟﻨﻬﺞ ) (Methodاﻟﺬي ﻧﺮﯾﺪ
ﺗﻄﺒﯿﻘﻪ ﻋﻠﻲ اﻟﻜﺎﺋﻦ ..وﯾﺘﺒﻊ اﻟﻨﻬﺞ داﺋﻤﺎ أﻗﻮاس ﺗﺤﺘﻮي ﻋﻠﻲ ﻣﺎ ﺳﯿﺤﺪث ﻓﻲ اﻟﻜﺎﺋﻦ ) (Objectﻋﻨﺪ ﺗﻄﺒﯿﻖ
اﻟﻨﻬﺞ ) (Methodﻋﻠﯿﻪ .ﻓﻲ ﻣﺜﺎﻟﻨﺎ ﺑﺄﻋﻠﻲ ...اﻟﻜﺎﺋﻦ ﻫﻮ ) (documentواﻟﻨﻬﺞ ﻫﻮ ) ..... (writeإذاً
ﻋﻨﺪﻣﺎ ﻧﺮﯾﺪ ﻛﺘﺎﺑﺔ ﺷﻲء ﻓﻲ ﺻﻔﺤﺔ اﻟﻮﯾﺐ ﻧﺴﺘﺨﺪم اﻟﻨﻬﺞ ) (writeداﺋﻤﺎ وﻧﻀﻊ ﺑﯿﻦ اﻷﻗﻮاس ﻣﺎ ﻧﺮﯾﺪ ﻛﺘﺎﺑﺘﻪ
ﻓﻲ اﻟﺼﻔﺤﺔ .
٤
ﻣﺤﻤﺪ ﺻﺪﻳﻖ ﺣﺴﻦ
واﻵن ﺟﺎء وﻗﺖ ﺗﻨﻔﯿﺬ اﻟﻤﺜﺎل ﻋﻤﻠﯿﺎً :
اﻟﻤﻮﺿﻮع ﻓﻲ ﻣﻨﺘﻬﻰ اﻟﺴﻬﻮﻟﺔ ﻗﻢ ﺑﺄﻋﺪاد اﻟﻜﻮد أو أﻧﻘﻠﻪ إﻟﻰ اﻟﻤﻔﻜﺮة ) ( Notpadوﻫﻲ ﻣﺤﺮر اﻟﻨﺼﻮص
اﻟﻤﺮﻓﻖ ﻣﻊ اﻟﻮﯾﻨﺪوز.
ﺛﻢ اﺣﻔﻆ اﻟﻤﻠﻒ ﻗﻢ ﺑﺘﻐﯿﯿﺮ اﻣﺘﺪاد اﻟﻤﻠﻒ ﻣﻦ اﻻﻣﺘﺪاد txtإﻟﻰ اﻻﻣﺘﺪاد htmأو اﻻﻣﺘﺪاد . html
إذا ﺗﺤﻮل ﺷﻜﻞ أﯾﻘﻮﻧﺔ ﻣﻦ ﺷﻜﻞ أﯾﻘﻮﻧﺔ اﻟﻤﻔﻜﺮة ) ( Notpadإﻟﻰ ﺷﻜﻞ أﯾﻘﻮﻧﺔ ﻣﺘﺼﻔﺢ اﻹﻧﺘﺮﻧﺖ اﻟﺬي
ﺗﺴﺘﺨﺪﻣﻪ ﻛﻤﺎ ﻓﻲ اﻟﺸﻜﻞ اﺳﻔﻞ اﻟﺼﻔﺤﺔ ) ﻓﻲ اﻟﻤﺜﺎل اﺧﺘﺮﻧﺎ اﻟﻤﺘﺼﻔﺢ إﻧﺘﺮﻧﺖ إﻛﺴﺒﻠﻮرر ( ﻓﻤﻌﻨﻰ ذﻟﻚ أن اﻟﻌﻤﻠﯿﺔ
ﻧﺠﺤﺖ ﻓﻘﻂ اﻓﺘﺢ اﻟﻤﻠﻒ ﺑﻤﺘﺼﻔﺢ اﻹﻧﺘﺮﻧﺖ وﺳﯿﺘﻢ اﻟﺘﻨﻔﯿﺬ .
ﺷﻜﻞ اﻟﻤﻠﻒ اﻟﺬي اﻣﺘﺪاده thml ﺷﻜﻞ اﻟﻤﻠﻒ اﻟﺬي اﻣﺘﺪاده txt
٥
ﻣﺤﻤﺪ ﺻﺪﻳﻖ ﺣﺴﻦ
ﻛﯿﻒ ﺗﺘﻢ ﻋﻤﻠﯿﺔ اﻟﺘﻌﺪﯾﻞ
ﻋﻤﻠﯿﺔ اﻟﺘﻌﺪﯾﻞ اﺑﺴﻂ ﻣﻤﺎ ﺳﺒﻖ ﻟﻨﻔﺮض أﻧﻚ ﺗﺴﺘﺨﺪم إﻧﺘﺮﻧﺖ اﻛﺴﺒﻠﻮرر وﻟﻢ ﯾﻌﺠﺒﻚ ﺗﻨﻔﯿﺬ ﺑﺮﻧﺎﻣﺠﻚ أو ﺗﺮى ﺗﻌﺪﯾﻞ
ﺷﺊ أو إﺿﺎﻓﺔ ﺷﺊ آﺧﺮ ﻟﺘﺤﺴﯿﻦ أداء اﻟﺒﺮﻧﺎﻣﺞ ﯾﺘﻢ ذﻟﻚ ﻋﻦ ﻃﺮﯾﻖ ﻓﺘﺢ اﻟﻤﺘﺼﻔﺢ اﻟﺬي ﺗﺴﺘﺨﺪﻣﻪ وﻣﻦ اﻟﻘﺎﺋﻤﺔ
اﻟﻤﻨﺴﺪﻟﺔ ﻧﺨﺘﺎر اﻟﻘﺎﺋﻤﺔ ﻋﺮض ﺛﻢ ﻧﺨﺘﺎر اﻷﻣﺮ ﻋﺮض اﻟﻤﺼﺪر أﻣﺎ إذا ﻛﺎن اﻟﻤﺘﺼﻔﺢ ﺑﺎﻟﻠﻐﺔ اﻹﻧﺠﻠﯿﺰﯾﺔ ﻓﺴﯿﻜﻮن
اﺧﺘﯿﺎر اﻟﻘﺎﺋﻤﺔ اﻟﻤﻨﺴﺪﻟﺔ Viewﺛﻢ ﻧﺨﺘﺎر اﻷﻣﺮ . source
ﺗﻔﺘﺢ اﻟﻤﻔﻜﺮة ) ( Notpadآﻟﯿﺎ وﯾﻈﻬﺮ ﻟﻚ اﻟﻜﻮد اﻟﺬي ﻛﺘﺒﺘﻪ ﻗﻢ ﺑﻌﻤﻞ اﻟﺘﻌﺪﯾﻞ واﺣﻔﻆ اﻟﻤﻠﻒ ﺑﺎﻟﻤﻔﻜﺮة
) ( Notpadﺛﻢ اﻏﻠﻖ اﻟﻤﻔﻜﺮة ) .( Notpad
ﻋﻠﻰ اﻟﻤﺘﺼﻔﺢ واﻟﺬي ﻣﻦ اﻟﻤﻔﺘﺮض أن ﺻﻔﺤﺘﻚ اﻟﺘﻲ ﺗﺤﻮي اﻟﺒﺮﻧﺎﻣﺞ ﻣﺎزاﻟﺖ ﻇﺎﻫﺮة أﻣﺎﻣﻚ ﺑﺎﻟﻄﺒﻊ ﻗﺒﻞ اﻟﺘﻌﺪﯾﻞ
ﻗﻢ ﺑﻀﻐﻂ أﯾﻘﻮﻧﺔ Refreshأو ﻣﻔﺘﺎح F5أو ﻣﻦ ﻗﺎﺋﻤﺔ ﻋﺮض اﻟﻤﻮﺟﻮدة ﻓﻲ أﻋﻠﻰ اﻟﻤﺘﺼﻔﺢ ﻧﺨﺘﺎر أﻣﺮ
ﺗﺤﺪﯾﺚ ﺳﯿﺘﻢ ﺗﺤﻤﯿﻞ اﻟﻨﺴﺨﺔ اﻟﻤﻌﺪﻟﺔ .
٦
ﻣﺤﻤﺪ ﺻﺪﻳﻖ ﺣﺴﻦ
رﺳﺎﺋﻞ اﻟﺨﻄﺄ
رﺳﺎﺋﻞ اﻟﺨﻄﺄ ﺗﺤﺪث ﻛﺜﯿﺮا ﻓﻲ اﻟﺠﺎﻓﺎ ﺳﻜﺮﯾﺒﺖ .ﻓﻜﻠﻤﺎ ﺑﻨﯿﺖ ﺟﺎﻓﺎ ﺳﻜﺮﯾﺒﺖ ووﺿﻌﺘﻪ ﻓﻲ ﺻﻔﺤﺔ اﻟﻮب وﻇﻨﻨﺖ أن
ﻛﻞ ﺷﻲء ﻋﻠﻲ ﻣﺎ ﯾﺮام ...ﻓﺠﺄة ﺗﺠﺪ أﺣﺪ رﺳﺎﺋﻞ اﻟﺨﻄﺄ ﻇﺎﻫﺮة أﻣﺎﻣﻚ وﺗﺆﻛﺪ ﻟﻚ أن ﻫﻨﺎك ﺷﻲء ﻟﯿﺲ ﻋﻠﻲ ﻣﺎ
ﯾﺮام .
ﻫﻨﺎك ﻧﻮﻋﺎن رﺋﯿﺴﯿﺎن ﻣﻦ اﻷﺧﻄﺎء اﻟﺘﻲ ﯾﻤﻜﻦ أن ﺗﺤﺪث ﻓﻲ اﻟﺠﺎﻓﺎ ﺳﻜﺮﯾﺒﺖ ...ﻫﻤﺎ :اﻷﺧﻄﺎء اﻟﺘﻲ ﺗﻨﺘﺞ ﻋﻦ
اﻟﺨﻄﺄ ﻓﻲ اﻟﻜﺘﺎﺑﺔ ﻛﺎﻷﺧﻄﺎء اﻹﻣﻼﺋﯿﺔ أو أﻧﻚ وﺿﻌﺖ ﻋﻼﻣﺔ ﺗﻨﺼﯿﺺ ﻣﺰدوﺟﺔ ﺑﯿﻨﻤﺎ ﻛﺎن ﯾﺠﺐ وﺿﻊ ﻋﻼﻣﺔ
ﻣﻔﺮدة ..وﺗﺴﻤﻲ ﺗﻠﻚ اﻷﺧﻄﺎء ) (& Syntax errorsأو اﻷﺧﻄﺎء اﻟﻨﺎﺗﺠﺔ ﻋﻦ اﺳﺘﺨﺪام أﻣﺮ ﻓﻲ ﻏﯿﺮ
ﻣﻮﺿﻌﻪ ﺑﺤﯿﺚ ﯾﻜﻮن ﻏﯿﺮ ﻣﺘﻨﺎﺳﻖ ﻣﻊ ﺑﺎﻗﻲ أواﻣﺮ اﻟﻜﻮد وﺗﺴﻤﻲ ) . (Run-Time errorsأﯾﺎ ﻛﺎن ﻧﻮع
اﻟﺨﻄﺄ ﻓﻜﻼﻫﻤﺎ ﯾﻌﻨﻲ أن ﻫﻨﺎك ﺷﻲء ﻟﯿﺲ ﻋﻠﻲ ﻣﺎ ﯾﺮام .
ﻫﻨﺎك اﻟﻌﺪﯾﺪ ﻣﻦ اﻟﺒﺮاﻣﺞ اﻟﺠﺎﻫﺰة اﻟﺘﻲ ﺗﻤﻜﻨﻚ ﻣﻦ ﻣﻌﺎﻟﺠﺔ ﺗﻠﻚ اﻷﺧﻄﺎء .وﻟﻜﻨﻲ أﻓﻀﻞ أن ﺗﻔﻌﻞ ذﻟﻚ ﺑﻨﻔﺴﻚ ﻓﻬﻲ
ﻓﻲ اﻟﺤﻘﯿﻘﺔ أﺳﻬﻞ ﻣﻤﺎ ﺗﻈﻦ .
ﯾﻘﺎل أن أﻓﻀﻞ ﻃﺮﯾﻘﺔ ﻟﻤﻌﺎﻟﺠﺔ اﻷﺧﻄﺎء ﻫﻮ ﺗﻼﻓﯿﻬﺎ .ﻋﻠﻲ ﻛﻞ ﺣﺎل ﯾﻤﻜﻨﻚ ﺗﻘﻠﯿﻞ اﺣﺘﻤﺎﻻت ﻇﻬﻮر اﻟﺨﻄﺄ ﺑﺄن
ﺗﺴﺘﺨﺪم ﻣﺤﺮر ﻧﺼﻮص )اﻟﺬي ﺗﺴﺘﺨﺪﻣﻪ ﻓﻲ ﺗﺤﺮﯾﺮ اﻟـ ( HTMLﻟﯿﺴﺖ ﻟﻪ ﺣﺪود .ﺑﻤﻌﻨﻲ أﻧﻪ ﻋﻨﺪ ﻛﺘﺎﺑﺔ أﻣﺮ
ﻣﻦ أواﻣﺮ اﻟﺠﺎﻓﺎ ﺳﻜﺮﯾﺒﺖ ﻻ ﯾﻨﺘﻘﻞ ﺟﺰء ﻣﻦ اﻷﻣﺮ ﻟﻠﺴﻄﺮ اﻟﺘﺎﻟﻲ ﻧﻈﺮا ﻟﻀﯿﻖ ﺣﺪود ﻣﺤﺮر اﻟﻨﺼﻮص .إذن أﻛﺘﺐ
ﻛﻞ أﻣﺮ ﻣﻦ أواﻣﺮ اﻟﺠﺎﻓﺎ ﺳﻜﺮﯾﺒﺖ ﻓﻲ ﺳﻄﺮ واﺣﺪ ﻓﻼ ﯾﻮﺟﺪ داﻋﻲ ﻟﺘﻘﺴﯿﻢ اﻷﻣﺮ اﻟﻄﻮﯾﻞ ﻧﺴﺒﯿﺎ ﻋﻠﻲ ﺳﻄﺮﯾﻦ ﻓﺬﻟﻚ
ﯾﻤﻜﻦ أن ﯾﺆدي ﻟﻠﻌﺪﯾﺪ ﻣﻦ اﻷﺧﻄﺎء .إذا أﺧﺬت ذﻟﻚ ﻓﻲ اﻻﻋﺘﺒﺎر ﺗﻜﻮن ﻗﺪ ﺗﻼﻓﯿﺖ اﻟﻌﺪﯾﺪ ﻣﻦ رﺳﺎﺋﻞ اﻟﺨﻄﺄ اﻟﺘﻲ
ﯾﻤﻜﻦ أن ﺗﻀﺎﯾﻘﻚ .
ﻧﺄﺗﻲ اﻵن ﻟﻜﯿﻔﯿﺔ ﻋﻼج اﻷﺧﻄﺎء ..أﺟﻤﻞ ﺷﻲء ﻓﻲ أﺧﻄﺎء اﻟﺠﺎﻓﺎ ﺳﻜﺮﯾﺒﺖ ﻫﻲ أﻧﻪ ﻋﻨﺪ ﺣﺪوث ﺧﻄﺄ ﻣﺎ ﯾﻈﻬﺮ ﻟﻚ
ﺻﻨﺪوق رﺳﺎﺋﻞ ﯾﻮﺿﺢ ﻟﻚ ﻣﺎ ﻫﻮ اﻟﺨﻄﺄ وأﯾﻦ وﻗﻊ ذﻟﻚ اﻟﺨﻄﺄ )ﻓﻘﻂ ﻣﻊ ﻣﺘﺼﻔﺢ ﻧﯿﺘﺴﻜﯿﺐ( .ﺣﯿﺚ ﯾﻮﺿﺢ ﻟﻚ
رﻗﻢ اﻟﺴﻄﺮ اﻟﺬي وﻗﻊ ﻓﯿﻪ اﻟﺨﻄﺄ ..وﻟﻜﻲ ﺗﺼﻞ ﻟﻠﺴﻄﺮ اﻟﺬي وﻗﻊ ﺑﻪ اﻟﺨﻄﺄ أﺑﺪأ ﻋﺪ اﻟﺴﻄﻮر ﻣﻦ أول ﺳﻄﺮ ﻓﻲ
اﻟـ HTMLوﻟﯿﺲ ﻣﻦ أول ﺳﻄﺮ ﻓﻲ اﻟﺠﺎﻓﺎ ﺳﻜﺮﯾﺒﺖ ﻣﻊ ﻋﺪ ﺟﻤﯿﻊ اﻷﺳﻄﺮ ﺷﺎﻣﻠﺔ اﻟﺴﻄﻮر اﻟﺒﯿﻀﺎء .
ﻓﻲ ﺑﻌﺾ اﻷﺣﯿﺎن ﺗﻈﻬﺮ أﻣﺎﻣﻚ اﻟﻌﺪﯾﺪ ﻣﻦ رﺳﺎﺋﻞ اﻟﺨﻄﺄ اﻟﻤﺘﺘﺎﺑﻌﺔ ﻋﻨﺪ ﺗﺤﻤﯿﻞ ﺻﻔﺤﺔ اﻟﻮﯾﺐ اﻟﺤﺎوﯾﺔ ﻋﻠﻲ ﺟﺎﻓﺎ
ﺳﻜﺮﯾﺒﺖ .وﻟﯿﺲ ﻣﻌﻨﻲ ذﻟﻚ ﺑﺎﻟﻀﺮورة أن ﻫﻨﺎك اﻟﻌﺪﯾﺪ ﻣﻦ اﻷﺧﻄﺎء ﻓﻲ أواﻣﺮ اﻟﺠﺎﻓﺎ ﺳﻜﺮﯾﺒﺖ ..ﻓﺮﺑﻤﺎ ﻛﺎﻧﺖ ﻛﻞ
ﻫﺬه اﻷﺧﻄﺎء ﻧﺘﯿﺠﺔ ﻟﺤﺪوث اﻷﺧﻄﺎء ﻓﻲ اﻟﺴﻄﻮر اﻷوﻟﻲ .ﻟﺬﻟﻚ ﻋﺎﻟﺞ اﻷﺧﻄﺎء ﻓﻲ اﻟﻜﻮد ) (SCRIPTﺑﺎﻟﺘﺮﺗﯿﺐ
ﻣﻦ أﻋﻠﻲ ﻷﺳﻔﻞ .ﻓﻔﻲ ﻛﺜﯿﺮ ﻣﻦ اﻷﺣﯿﺎن ﺗﻈﻬﺮ ﻟﻚ ٢٠رﺳﺎﻟﺔ ﺧﻄﺄ وﻋﻨﺪﻣﺎ ﺗﻌﺎﻟﺞ أول ﺧﻄﺄ ﺗﺠﺪ ﻧﻔﺴﻚ ﻗﺪ
ﻋﺎﻟﺠﺖ ﺟﻤﯿﻊ اﻟﻤﺸﻜﻼت .
ﻻ ﯾﻮﺟﺪ ﻣﺎ ﯾﻤﻜﻦ أن ﯾﻘﺎل ﻋﻦ اﻷﺧﻄﺎء ﺣﺎﻟﯿﺎ أﻛﺜﺮ ﻣﻦ ذﻟﻚ ﻓﺄﻧﺖ اﻵن أﺻﺒﺤﺖ ﺗﻌﺮف ﻛﯿﻒ ﺗﻌﺎﻟﺞ %٩٩ﻣﻦ
اﻟﻤﺸﻜﻼت و اﻷﺧﻄﺎء اﻟﺘﻲ ﯾﻤﻜﻦ أن ﺗﺤﺪث .ﻓﻘﻂ ﺗﺬﻛﺮ داﺋﻤﺎ أﻧﻪ ﻻﺑﺪ ﻣﻦ ﺣﺪوث أﺧﻄﺎء ﻓﺈذا ﻟﻢ ﺗﻈﻬﺮ ﻟﻚ أي
رﺳﺎﻟﺔ ﺧﻄﺄ ﻓﻬﺬا ﻻ ﯾﻌﻨﻲ إﻻ أﻧﻚ ﻗﺪ ﺗﺮﻛﺖ اﻟﺼﻔﺤﺔ ﺑﯿﻀﺎء ﻟﯿﺲ ﺑﻬﺎ ﺷﻲء .
٧
ﻣﺤﻤﺪ ﺻﺪﻳﻖ ﺣﺴﻦ
أﺳﺎﺳﯿﺎت ﺟﺎﻓﺎ ﺳﻜﺮﯾﺒﺖ
ﺟﺎﻓﺎ ﺳﻜﺮﯾﺒﺖ ﻻ ﺗﻬﺘﻢ ﺑﻨﻮع اﻟﻤﺘﻐﯿﺮ ﺳﻮاء ﻛﺄن ﺣﺮﻓﯿﺎ أو ﻋﺪد ﺻﺤﯿﺢ أو ﻋﺪد ﻋﺸﺮي وﻫﻮ ﻣﺎ ﻗﺪ ﯾﺮوق ﻟﻠﻜﺜﯿﺮ
ﻣﻦ اﻟﻤﺒﺘﺪﺋﯿﻦ ﻷﻧﻬﺎ ﺗﺘﺮﺟﻢ وﻗﺖ اﻟﺘﻨﻔﯿﺬ ﻓﻬﻲ ﻻ ﺗﻬﺘﻢ ﺑﺬﻟﻚ ﻓﻘﻂ ﯾﺴﺒﻖ اﻟﻤﺘﻐﯿﺮ ﺑﺎﻷﻣﺮ
var
أﻣﺜﻠﺔ
;var x
;var X
;var ww10
;var x , X , y , ww10
;var x = 5 , X = 7 , y = 17
- اﻟﻄﺮح
++ اﻟﺰﯾﺎدة ﺑﻤﻘﺪار واﺣﺪ
-- اﻟﻨﻘﺼﺎن ﺑﻤﻘﺪار واﺣﺪ
* اﻟﻀﺮب
/ اﻟﻘﺴﻤﺔ
% اﻟﻘﺴﻤﺔ ﺑﺎﻗﻲ
+ اﻟﺠﻤﻊ
٨
ﻣﺤﻤﺪ ﺻﺪﻳﻖ ﺣﺴﻦ
اﻟﻤﻌﺎﻣﻼت اﻟﻤﻨﻄﻘﯿﺔ •
! اﻟﻨﻔﻲ
< ﻣﻦ اﺻﻐﺮ
> ﻣﻦ اﻛﺒﺮ
=< اﺻﻐﺮ ﻣﻦ أو ﯾﺴﺎوي
=> اﻛﺒﺮ ﻣﻦ أو ﯾﺴﺎوي
= ﯾﺴﺎوي
=! ﻻ ﯾﺴﺎوي
&& و
|| أو
?: ﺷﺮط
٩
ﻣﺤﻤﺪ ﺻﺪﻳﻖ ﺣﺴﻦ
ﻋﺒﺎرات اﻟﺘﺤﻜﻢ
IF statement
اﻟﺘﺤﻜﻢ ﺑﺎﺳﺘﺨﺪام ifاﻟﺸﺮﻃﯿﺔ ﻣﻊ وﺿﻊ ﺷﺮوط ﯾﺠﺐ ﺗﺤﻘﻘﻪ ﻟﻜﻲ ﯾﺘﻢ ﺗﻨﻔﯿﺬ اﻟﺠﻤﻠﺔ.
No Statements
١ ><html
٢ ><head
٣ ><title>Second Example</title
٤ ></head
٥ > <body
٦ >"<SCRIPT LANGUAGE="javascript
٧ <!--
٨ ;var x=50
٩ ) if ( x > 0 // if test
١٠ {
١١ ;) y = ( x * x * x // 1: cube of x
١٢ ;)""document.write("y = "+y+" that is the cube of x when x = "+ x +
١٣ }
١٤ >--
١٥ ></SCRIPT
١٦ ></body
١٧ ></html
و اﻟﺬي ﯾﺪل ></html -١أوﻻ ﯾﺘﻢ وﺿﻊ tagاﻟﻤﺴﻤﻰ واﻟﺬي ﯾﺪل ﻋﻠﻰ ﺑﺪاﯾﺔ اﻟﺼﻔﺤﺔ > <htmlواﻟـ tag
ﻋﻠﻰ ﻧﻬﺎﯾﺔ اﻟﺼﻔﺤﺔ وﯾﺘﻢ وﺿﻊ ﺑﺎﻗﻲ اﻷواﻣﺮ ﻟﻐﺔ .HTML
١٠
ﻣﺤﻤﺪ ﺻﺪﻳﻖ ﺣﺴﻦ
٢و ٣و <head> -٤و > </headﯾﻮﺿﻊ ﺑﯿﻨﻬﻤﺎ ﻋﻨﻮان اﻟﺼﻔﺤﺔ .وأﻣﺎ ﺑﺎﻟﻨﺴﺒﺔ ﻟـ > <titleو
> </titleﺗﺘﯿﺢ ﻟﻚ ﻫﺬه اﻟﻌﻼﻣﺔ أن ﺗﻌﻄﻲ اﻟﺼﻔﺤﺔ ﻋﻨﻮاﻧﺎ واﺿﺤﺎ ﻣﻤﯿﺰا وﯾﻈﻬﺮ ﻫﺬا اﻟﻌﻨﻮان ﻋﻠﻰ ﻧﺎﻓﺬة
اﻟﻤﺴﺘﻌﺮض وﯾﺠﺐ أن ﯾﺤﺘﻮي ﻋﻠﻰ اﻟﻌﻨﻮان ﻋﻠﻰ ﺣﺮوف و أرﻗﺎم ﻓﻘﻂ.
<body> -٥و > </bodyﺣﯿﺚ ﯾﺘﻢ ﻛﺘﺎﺑﺔ داﺧﻞ ﻫﺬا اﻟﺠﺰء ﻣﺤﺘﻮﯾﺎت ﺻﻔﺤﺔ اﻟﻮب اﻟﻔﻌﻠﯿﺔ ﻣﺜﻞ اﻟﺠﺪاول و
اﻟﻨﻤﺎذج و اﻟﺼﻮر و اﻟﺘﻲ ﺳﯿﺮاﻫﺎ اﻟﺰوار ﻟﻬﺬه اﻟﺼﻔﺤﺔ .
-٦ﻫﺬا اﻟﺴﻄﺮ ﯾﺠﺐ أن ﯾﻜﻮن أول ﺳﻄﺮ ﻓﻲ أي ﻛﻮد ﺟﺎﻓﺎ ﺳﻜﺮﯾﺒﺖ ﻛﻤﺎ ذﻛﺮﻧﺎه ﻓﻲ اﻟﻤﺜﺎل اﻷول ﺣﯿﺚ أﻧﻪ ﯾﻨﺒﻪ
اﻟﻤﺘﺼﻔﺢ ﺑﺄن ﻣﺎ ﺳﯿﺘﺒﻊ ﻫﺬا اﻷﻣﺮ ﻫﻮ . Javascript
٧و -١٤اﻟﺮﻣﺰ اﻟﺘﺎﻟﻲ <!--ﯾﻘﻮم ﺑﺈﺧﻔﺎء ﻛﻮد اﻟﺠﺎﻓﺎ ﺳﻜﺮﯾﺒﺖ ﻣﻦ اﻟﻤﺴﺘﻌﺮض أو اﻟﻤﺘﺼﻔﺢ اﻟﺬي ﻻ ﯾﺪﻋﻢ ﻟﻐﺔ
اﻟﺠﺎﻓﺎ ﺳﻜﺮﯾﺒﺖ وﺑﻌﺪ اﻻﻧﺘﻬﺎء ﻣﻦ ﻛﺘﺎﺑﺔ اﻟﻜﻮد ﯾﺘﻢ وﺿﻊ اﻟﺮﻣﺰ اﻟﺘﺎﻟﻲ > . --
وﺗﻢ إﻋﻄﺎءه اﻟﻘﯿﻤﺔ .50 x واﺳﻢ ﻫﺬا اﻟﻤﺘﻐﯿﺮ var -٨ﻓﻲ ﻫﺬه اﻟﺨﻄﻮة ﺗﻢ ﺗﻌﺮﯾﻒ ﻣﺘﻐﯿﺮ وذﻟﻚ ﺑﺎﺳﺘﺨﺪام اﻟﻜﻠﻤﺔ
-٩ﻫﻨﺎ اﺳﺘﺨﺪﻣﻨﺎ ﺟﻤﻠﺔ اﻟﺘﺤﻜﻢ ifاﻟﺸﺮﻃﯿﺔ واﻟﺸﺮط اﻟﻤﻮﺟﻮد ﻓﻲ اﻟﻤﺜﺎل ﻣﻌﻨﺎه إذا ﻛﺎﻧﺖ ﻗﯿﻤﺔ اﻟﻤﺘﻐﯿﺮ xأﻛﺒﺮ
ﻣﻦ اﻟﺼﻔﺮ )أي ﻋﻨﺪ ﺗﺤﻘﻖ اﻟﺸﺮط ( ﻓﺈﻧﻪ ﯾﻨﻔﺬ اﻷواﻣﺮ اﻟﺘﻲ ﺑﻌﺪ ﺟﻤﻠﺔ ifاﻟﺸﺮﻃﯿﺔ وﻗﺪ ﯾﺘﻢ وﺿﻊ اﻷﻗﻮاس }{
و ذﻟﻚ ﯾﺪل ﻋﻠﻰ أﻧﻪ ﯾﺠﺐ ﺗﻨﻔﯿﺬ ﻛﻞ اﻷواﻣﺮ اﻟﻤﻮﺟﻮدة ﺑﺪاﺧﻞ اﻷﻗﻮاس .
١٠و -١٣وﺿﻊ اﻷﻗﻮاس }{ ﺣﯿﺚ ﺗﻢ وﺿﻌﻬﺎ ﻋﻨﺪﻣﺎ ﻧﺮﯾﺪ أن ﻧﻨﻔﺬ أﻛﺜﺮ ﻣﻦ ﺟﻤﻠﺔ ﻋﻨﺪ ﺗﺤﻘﻖ ﺷﺮط ﻣﺎ وﻓﻲ
ﺣﺎﻟﺔ ﻋﺪم وﺿﻊ اﻻﻗﻮاس ﻓﺈن اﻟﺒﺮﻧﺎﻣﺞ ﻋﻨﺪ ﺗﺤﻘﻖ اﻟﺸﺮط اﻟﻤﻮﺟﻮد ﻓﻲ ﺣﻤﻠﺔ ifﺳﻮف ﯾﻘﻮم ﺑﺘﻨﻔﯿﺬ أول
ﺟﻤﻠﺔ ﺑﻌﺪ ifوﻫﻮ ;) . y = ( x * x * x
-١١ﻓﻲ ﻫﺬه اﻟﺨﻄﻮة ﯾﺘﻢ وﺿﻊ اﻟﻌﻤﻠﯿﺔ اﻟﺤﺴﺎﺑﯿﺔ وﻫﻲ ﻋﻤﻠﯿﺔ ﺗﻜﻌﯿﺐ اﻟﻤﺘﻐﯿﺮ xوذﻟﻚ ﺑﻀﺮب اﻟﻤﺘﻐﯿﺮ ﻓﻲ
ﻧﻔﺴﻪ ﺛﻼث ﻣﺮات وﻣﻦ ﺛﻢ وﺿﻊ اﻟﻨﺎﺗﺞ ﻣﻦ ﻫﺬه ا ﻟﻌﻤﻠﯿﺔ ﻓﻲ ﻣﺘﻐﯿﺮ yوﻻ ﻧﻨﺴﻰ وﺿﻊ ﻋﻼﻣﺔ اﻟﻔﺎﺻﻠﺔ
اﻟﻤﻨﻘﻮﻃﺔ ﻓﻲ ﻧﻬﺎﯾﺔ اﻟﺠﻤﻠﺔ ;) . y = ( x * x * x
-١٢اﻟﻌﺒﺎرة اﻟﺘﺎﻟﯿﺔ ﻫﻲ ﺷﺒﯿﻬﻪ ﺑﺎﻟﻤﺜﺎل اﻟﺬي ﺗﻢ ﺷﺮﺣﻪ ﻓﻲ اﻟﺼﻔﺤﺔ رﻗﻢ ٣وﻟﻜﻦ ﻫﻨﺎك ﺑﻌﺾ اﻟﻨﻘﺎط اﻟﺠﺪﯾﺪ
;)"" document.write("y = "+ y +" that is the cube of x when x = "+ x +و ﻓﻲ ﻫﺬا
اﻟﺴﻄﺮ ﯾﺘﻢ اﺳﺘﺨﺪام اﻟﻜﺎﺋﻦ ) ( documentوذﻟﻚ ﻟﻜﺘﺎﺑﺔ ﻋﻦ ﻃﺮﯾﻖ اﻟﺪاﻟﺔ ) (writeﻣﺎ ﺑﺪاﺧﻞ اﻷﻗﻮاس .
و ﺳﻮف ﻧﺸﺮح اﻟﺠﺰء اﻟﺘﺎﻟﻲ )""("y = "+ y +" that is the cube of x when x = "+ x +
ﻫﻨﺎ ﻧﻼﺣﻆ اﻟﺘﺎﻟﻲ :
)" ﺟﻤﻠﺔ أو ﻧﺺ وﻓﻲ ﻫﺬا اﻟﻤﺜﺎل ﻓﺮاغ " +اﻟﻤﺘﻐﯿﺮ وﻓﻲ ﻫﺬا اﻟﻤﺜﺎل "+ xﺟﻤﻠﺔ أو ﻧﺺ" +اﻟﻤﺘﻐﯿﺮ وﻓﻲ ﻫﺬا
اﻟﻤﺜﺎل "+ yﻫﻨﺎ اﻟﻨﺺ اﻟﺬي ﺗﺮﯾﺪ ﻃﺒﺎﻋﺘﻪ وﻓﻲ ﻫﺬا اﻟﻤﺜﺎل = (" y
إذا ﻧﺴﺘﻨﺘﺞ أﻧﻪ إذا أردﻧﺎ ﻃﺒﺎﻋﺔ ﻧﺺ أو ﺟﻤﻠﺔ ﻓﺈﻧﻪ ﯾﺘﻢ وﺿﻌﻬﺎ ﻓﻲ ﻋﻼﻣﺘﻲ ﺗﻨﺼﯿﺺ " " .
. + و إذا أردﻧﺎ أن ﻧﻄﺒﻊ ﻗﯿﻤﺔ اﻟﻤﺘﻐﯿﺮ ﯾﺘﻢ وﺿﻌﻪ ﺑﺪون ﻋﻼﻣﺔ ﺗﻨﺼﯿﺺ و ﻧﻀﻌﻪ ﺑﯿﻦ ﻋﻼﻣﺘﻲ +
١١
ﻣﺤﻤﺪ ﺻﺪﻳﻖ ﺣﺴﻦ
SWITCH
)switch (n
case 2:
ﻧﻔﺬ ﻫﺬه اﻷواﻣﺮ
;break
case 3:
ﻧﻔﺬ ﻫﺬه اﻷواﻣﺮ
;break
case 4:
ﻧﻔﺬ ﻫﺬه اﻷواﻣﺮ
;break
default :
ﻧﻔﺬ ﻫﺬه اﻷواﻣﺮ
;break
وﻫﻲ ﻓﻲ اﻟﻌﺎدة ﺗﺴﺘﺨﺪم ﻋﻨﺪﻣﺎ ﺗﻜﻮن ﻟﺪﯾﻚ ﻗﯿﻤﺔ ﻣﺤﺪدة وﻣﻌﺮﻓﺔ وﺗﺮﯾﺪ ﺗﻨﻔﯿﺬ اﻟﻌﻤﻠﯿﺎت أو اﻷواﻣﺮ
ﻋﻨﺪﻣﺎ ﯾﺘﻢ اﺧﺘﯿﺎر ﻗﯿﻤﺔ ﻣﻌﯿﻨﺔ.
ﯾﻘﻮم اﻷﻣﺮ ﺑﺎﺧﺘﺒﺎر ﻗﯿﻤﺔ اﻟﻤﺘﻐﯿﺮ nﻋﻨﺪﻣﺎ ﺗﻜﻮن ﻣﺴﺎوﯾﺔ ﻟﻮاﺣﺪ ﻣﻦ اﻟﺤﺎﻻت اﻟﺘﻲ ﺣﺪدﺗﻬﺎ وﻫﻲ caseﺗﻨﻔﺬ
اﻷواﻣﺮ اﻟﺘﻲ وﺿﻌﺘﻬﺎ ﺑﺪاﺧﻞ اﻟـ caseإﻟﻰ أن ﯾﺼﻞ إﻟﻰ ﻛﻠﻤﺔ breakﻋﻨﺪ ذﻟﻚ ﯾﺘﻢ اﻟﺨﺮوج ﻣﻦ اﻟﺒﻠﻮك
اﻟﺨﺎص ﺑﺠﻤﻠﺔ switchو إذا ﻟﻢ ﺗﺴﺎوي أي ﻣﻦ اﻟﻘﯿﻢ اﻟﺘﻲ اﻓﺘﺮﺿﺘﻬﺎ ﯾﺘﻮﺟﻪ اﻟﺘﻨﻔﯿﺬ إﻟﻰ اﻷواﻣﺮ اﻟﺘﻲ ﺗﻠﻲ
اﻷﻣﺮ . default
وﺳﻮف ﻧﺸﺮح ﻣﺜﺎل ﺑﻌﺪ أن ﻧﺄﺧﺬ ﻋﺒﺎرات اﻟﺘﻜﺮار ﺣﯿﺚ ﺳﻨﺪﻣﺞ ﺟﻤﻠﺔ اﻟﺘﺤﻜﻢ switchﻣﻊ ﺟﻤﻠﺔ اﻟﺘﻜﺮار for
وذﻟﻚ ﻓﻬﻢ اﻟﺘﺮﻛﯿﺐ ﺑﯿﻦ ﺟﻤﻞ اﻟﺘﺤﻜﻢ و اﻟﺘﻜﺮار وﻣﻦ ﺛﻢ ﻧﺘﺮك ﻟﺨﯿﺎﻟﻚ اﻟﻮاﺳﻊ ﻟﻺﺑﺪاع ﻓﻲ ﻛﺘﺎﺑﺔ اﻟﺒﺮاﻣﺞ .و أﻻن
ﻟﻨﻨﺘﻘﻞ إﻟﻰ ﻋﺒﺎرات اﻟﺘﻜﺮار .
١٢
ﻣﺤﻤﺪ ﺻﺪﻳﻖ ﺣﺴﻦ
ﻋﺒﺎرات اﻟﺘﻜﺮار
FOR
ﻧﻔﺲ اﻟﻮﻇﯿﻔﺔ ﺟﻤﻠﺔ whileوﻟﻜﻦ ﻫﻨﺎ ﯾﺘﻢ ﺗﺤﺪﯾﺪ اﻟﻘﯿﻤﺔ اﻟﺘﻲ ﺳﻮف ﻧﺒﺪاء ﻣﻨﻬﺎ وﻣﻘﺪار اﻟﺰﯾﺎدة أو
اﻟﻨﻘﺼﺎن وﻋﺪد ﻣﺮات اﻟﺘﻜﺮار واﻟﺸﻜﻞ اﻟﻌﺎم ﻟﺠﻤﻠﺔ forﻫﻲ :
) ﻣﻘﺪار ﻟﺰﯾﺎدة أو اﻟﻨﻘﺼﺎن ; ﺷﺮط ﯾﺘﻢ ﻓﯿﻪ ﺗﺤﺪﯾﺪ ﻋﺪد ﻣﺮات اﻟﺘﻜﺮار ; ﻗﯿﻤﺔ اﻟﺒﺪاﯾﺔ ( For
اﻟﺘﺮﻛﯿﺐ ﻣﻄﺎﺑﻖ ﺗﻤﺎﻣﺎ ﻟﻠﻐﺔ C++وﻣﻌﻨﻰ اﻟﻤﺜﺎل اﺑﺪأ اﻟﻌﺪ ﻣﻦ ١ﺣﺘﻰ ﺗﺼﻞ اﻟﻘﯿﻤﺔ إﻟﻰ ﻗﯿﻤﺔ اﺻﻐﺮ ﻣﻦ أو
ﺗﺴﺎوى ١٠وﻓﻲ ﻛﻞ ﻣﺮة زﯾﺪ ﻗﯿﻤﺔ اﻟﻤﺘﻐﯿﺮ xﺑﻤﻘﺪار ١وﻣﻠﺨﺺ ذﻟﻚ ﻛﺮر ﻣﺎ ﺑﺪاﺧﻞ اﻟﺒﻠﻮك ١٠ﻣﺮات
ﻣﺮة أﺧﺮى ﻻ ﺣﻆ اﺳﺘﺨﺪام اﻟﻤﺆﺛﺮات اﻟﻤﻨﻄﻘﯿﺔ اﻟﻤﻈﻠﻞ ﺑﺎﻷزرق.
١٣
ﻣﺤﻤﺪ ﺻﺪﻳﻖ ﺣﺴﻦ
و أﻻن ﺳﻮف ﻧﻘﻮم ﺑﺸﺮح ﻣﺜﺎل ﯾﺤﺘﻮي ﻋﻠﻰ ﺟﻤﻠﺔ اﻟﺘﻜﺮار forوﻋﻠﻰ ﺟﻤﻠﺔ اﻟﺘﺤﻜﻢ switch
No Statements
١ ><html
٢ <head> welcome to java
٣ ></head
٤ >"<SCRIPT LANGUAGE="javascript
٥ <!--
٦ ;var n=5
٧ )for (var i=1 ; i<n ; i+1
٨ {
٩ switch )(i
١٠ {
١٢ } ;)" case 1: { document.write(" welcome
١٣ ;break
١٤ } ;)" case 2: { document.write(" to
١٥ ;break
١٦ } ;)" case 3: { document.write(" you
١٧ ;break
١٨ } ;)" case 4: { document.write(" and
١٩ ;break
٢٠ } ;)" *default :{ document.write(" *+*+*+*+
٢١ ;break
٢٢ }
٢٣ }
٢٤ >--
٢٥ ></SCRIPT
٢٦ ><body
٢٧ ></body
٢٨ ></html
و اﻟﺬي ></html ١و -٢٨أوﻻ ﯾﺘﻢ وﺿﻊ tagاﻟﻤﺴﻤﻰ واﻟﺬي ﯾﺪل ﻋﻠﻰ ﺑﺪاﯾﺔ اﻟﺼﻔﺤﺔ > <htmlواﻟـ tag
ﯾﺪل ﻋﻠﻰ ﻧﻬﺎﯾﺔ اﻟﺼﻔﺤﺔ وﯾﺘﻢ وﺿﻊ ﺑﺎﻗﻲ اﻷواﻣﺮ ﻟﻐﺔ .HTML
ﯾﻮﺿﻊ ﺑﯿﻨﻬﻤﺎ ﻋﻨﻮان اﻟﺼﻔﺤﺔ . ></head و <head> - ٢و ٣
-٤ﻫﺬا اﻟﺴﻄﺮ ﯾﺠﺐ أن ﯾﻜﻮن أول ﺳﻄﺮ ﻓﻲ أي ﻛﻮد ﺟﺎﻓﺎ ﺳﻜﺮﯾﺒﺖ ﺣﯿﺚ أﻧﻪ ﯾﻨﺒﻪ اﻟﻤﺘﺼﻔﺢ ﺑﺄن ﻣﺎ ﺳﯿﺘﺒﻊ ﻫﺬا
اﻷﻣﺮ ﻫﻮ . Javascript
٥و -٢٤اﻟﺮﻣﺰ اﻟﺘﺎﻟﻲ <!--ﯾﻘﻮم ﺑﺈﺧﻔﺎء ﻛﻮد اﻟﺠﺎﻓﺎ ﺳﻜﺮﯾﺒﺖ ﻣﻦ اﻟﻤﺴﺘﻌﺮض أو اﻟﻤﺘﺼﻔﺢ اﻟﺬي ﻻ ﯾﺪﻋﻢ ﻟﻐﺔ
اﻟﺠﺎﻓﺎ ﺳﻜﺮﯾﺒﺖ وﺑﻌﺪ اﻻﻧﺘﻬﺎء ﻣﻦ ﻛﺘﺎﺑﺔ اﻟﻜﻮد ﯾﺘﻢ وﺿﻊ اﻟﺮﻣﺰ اﻟﺘﺎﻟﻲ > . --
وأﺧﯿﺮ ﯾﺘﻢ وﺿﻊ اﻟﻔﺎﺻﻠﺔ اﻟﻤﻨﻘﻮﻃﺔ . 5 وﯾﺘﻢ إﻋﻄﺎءه اﻟﻘﯿﻤﺔ n -٦ﻓﻲ ﻫﺬه اﻟﺨﻄﻮة ﯾﺘﻢ ﺗﻌﺮﯾﻒ ﻣﺘﻐﯿﺮ
-٧اﺳﺘﺨﺪام ﺟﻤﻠﺔ اﻟﺘﻜﺮار forﺣﯿﺚ ﯾﺘﻢ ﺑﺪاﺧﻞ ﺟﻤﻠﺔ forﺗﻌﺮﯾﻒ ﻣﺘﻐﯿﺮ iوﺗﻢ إﻋﻄﺎءه ﻗﯿﻤﺔ اﺑﺘﺪاﺋﯿﺔ ﺗﺴﺎوي
واﺣﺪ ﺛﻢ ﺑﻌﺪ ذﻟﻚ ﺛﻢ وﺿﻊ ﻓﺎﺻﻠﺔ ﻣﻨﻘﻮﻃﺔ ; ﺛﻢ ﺑﻌﺪ ذﻟﻚ ﯾﺘﻢ وﺿﻊ اﻟﺸﺮط واﻟﺬي ﯾﺤﺪد ﻋﺪد ﻣﺮات اﻟﺘﻜﺮار
وﻓﻲ ﻣﺜﺎﻟﻨﺎ ﻫﺬا ﺗﻢ ﺗﺤﺪﯾﺪ ﻋﺪد اﻟﻤﺮات وﻫﻮ ٤ﻣﺮات اﻟﺘﻜﺮار ﺛﻢ ﺑﻌﺪ ذﻟﻚ ﺗﻢ وﺿﻊ ﻣﻘﺪار اﻟﺰﯾﺎدة وﻫﻮ ﻓﻲ ﻣﺜﺎﻟﻨﺎ
ﻣﻘﺪار اﻟﺰﯾﺎدة ﺑﻮاﺣﺪ وﯾﻤﻜﻦ وﺿﻊ أي ﻣﻘﺪار زﯾﺎدة أو ﻣﻘﺪار ﻧﻘﺼﺎن ﻋﻠﻰ ﺣﺴﺐ ﻣﺘﻄﻠﺒﺎت اﻟﺒﺮﻧﺎﻣﺞ اﻟﺬي ﺗﺮﯾﺪ
ﻋﻤﻠﻪ ،وﻧﻌﻮد إﻟﻰ اﻟﻤﺜﺎل ﻓﻲ اﻟﺠﺰء i+1ﻓﻲ ﻫﺬا اﻟﻔﻘﺮة ﯾﻘﻮم اﻟﺒﺮﻧﺎﻣﺞ ﺑﺈﺿﺎﻓﺔ ١إﻟﻰ أﺧﺮ ﻗﯿﻤﺔ ﻟﻠﻤﺘﻐﯿﺮ . i
١٤
ﻣﺤﻤﺪ ﺻﺪﻳﻖ ﺣﺴﻦ
اﻟﻤﻄﻠﻮب ﻓﻬﻤﻪ ﻓﻲ ﻫﺬه اﻟﺨﻄﻮة ﻣﺎ ﯾﻠﻲ :
أﻧﻪ ﻋﻨﺪﻣﺎ ﯾﺪﺧﻞ اﻟﺒﺮﻧﺎﻣﺞ ﻓﻲ ﺟﻤﻠﺔ اﻟﺘﻜﺮار forﻓﺈﻧﻪ ﯾﻨﻔﺬ اﻟﺨﻄﻮات اﻟﺘﺎﻟﯿﺔ
ﯾﺘﺤﻘﻖ ﻣﻦ اﻟﺸﺮط إذا ﻛﺎﻧﺖ ﻗﯿﻤﺔ Iاﻗﻞ ﻣﻦ ﻗﯿﻤﺔ اﻟـ ) nأو ﻋﻠﻰ ﺣﺴﺐ اﻟﺸﺮط اﻟﺬي ﺗﻀﻌﻪ (إذا ﻟﻢ ﯾﺘﺤﻘﻖ
اﻟﺸﺮط ﻓﺈﻧﻪ أﻣﺎ إذا ﺗﺤﻘﻖ اﻟﺸﺮط ﻓﺈﻧﻪ ﯾﻘﻮم ﺑﺰﯾﺎدة اﻟﻤﺘﻐﯿﺮ Iﺑﻤﻘﺪار ١وﯾﻨﺘﻘﻞ إﻟﻰ اﻟﺨﻄﻮة اﻟﺜﺎﻟﺜﺔ .
ﯾﻨﻔﺬ ﻛﻞ اﻷواﻣﺮ اﻟﻤﻮﺟﻮدة ﺑﺪاﺧﻞ اﻷﻗﻮاس اﻟﺨﺎﺻﺔ ﺑﺠﻤﻠﺔ اﻟـ forو ﻣﻦ ﺛﻢ ﯾﻌﻮد إﻟﻰ اﻟﺨﻄﻮة اﻟﺜﺎﻧﯿﺔ .
)switch (i
{
اﻷواﻣﺮ "(case 1: { document.write };)" welcome
اﻟﺘﻲ ﯾﺠﺐ ;break
ﺗﻨﻔﯿﺬﻫﺎ "(case 2: { document.write } ;)" to
واﻟﺘﻲ ﻫﻲ ;break
ﺑﺪاﺧﻞ أو "(case 3: { document.write } ;)" you
ﺑﯿﻦ أﻗﻮاس ;break
ﺟﻤﻠﺔ for "(case 4: { document.write } ;)" and
;break
"(default:{ document.write };)" **+*+*+*+
;break
}
}
ﻧﻬﺎﯾﺔ ﻗﻮس
ﺟﻤﻠﺔ اﻟـ for
٨و -٢٣ﻓﻲ ﻫﺬه اﻟﺨﻄﻮة ﯾﺘﻢ ﻛﺘﺎﺑﺔ ﻓﺘﺢ ﻗﻮس ﺟﻤﻠﺔ اﻟﺘﻜﺮار forو وﯾﻜﻮن اﻟﻘﻮس ﻋﻠﻰ ﺷﻜﻞ { وﯾﺠﺐ أن
ﯾﻐﻠﻖ ﺑﺎﻟﻘﻮس اﻟﺬي ﺷﻜﻠﻪ } ﻛﻤﺎ ﻓﻲ اﻟﻤﺜﺎل .
-٩ﻓﻲ ﻫﺬه اﻟﺨﻄﻮة ﯾﺘﻢ اﺳﺘﺨﺪام ﻋﺒﺎرة اﻟﺘﺤﻜﻢ ) switch( iﺣﯿﺚ ﯾﺘﻢ ﺑﺎﺧﺘﺒﺎر ﻗﯿﻤﺔ اﻟﻤﺘﻐﯿﺮ iﻋﻨﺪﻣﺎ ﺗﻜﻮن
ﻣﺴﺎوﯾﺔ ﻟﻮاﺣﺪ ﻣﻦ اﻟﺤﺎﻻت اﻟﺘﻲ ﺣﺪدﺗﻬﺎ وﻫﻲ caseﯾﺘﻢ ﺗﻨﻔﺬ اﻷواﻣﺮ اﻟﻤﻮﺟﻮدة ﺑﺪاﺧﻞ اﻷﻗﻮاس ﻟﻬﺬه اﻟـ
. case
١٥
ﻣﺤﻤﺪ ﺻﺪﻳﻖ ﺣﺴﻦ
١٠و -٢٢ﻓﻲ ﻫﺬه اﻟﺨﻄﻮة ﯾﺘﻢ ﻛﺘﺎﺑﺔ ﻓﺘﺢ ﻗﻮس ﻋﺒﺎرة اﻟﺘﺤﻜﻢ ) switch( iو وﯾﻜﻮن اﻟﻘﻮس ﻋﻠﻰ ﺷﻜﻞ {
وﯾﺠﺐ أن ﯾﻐﻠﻖ ﺑﺎﻟﻘﻮس اﻟﺬي ﺷﻜﻠﻪ } .
١٢و -١٣ﻓﻲ ﻫﺬه اﻟﺨﻄﻮﺗﯿﻦ ﯾﺘﻢ اﻟﺘﺄﻛﺪ ﻣﻦ أن اﻟﻘﯿﻤﺔ اﻟﻤﺘﻐﯿﺮ iﺗﺴﺎوي اﻟﻘﯿﻤﺔ اﻟﻤﻮﺟﻮدة أﻣﺎم ﻛﻠﻤﺔ case
وﻓﻲ ﻣﺜﺎﻟﻨﺎ وﺧﺼﻮص ﻫﺬه اﻟﺤﺎﻟﺔ ﺗﺴﺎوي ١ﺣﯿﺚ ﯾﺘﻢ ﺗﻨﻔﯿﺬ ﻣﺎ ﺑﺪاﺧﻞ اﻟﻘﻮس اﻟﺘﻲ ﺷﻜﻠﻬﺎ } { وﻫﻮ
;break
ﻓﻲ ﻫﺬا اﻟﺠﻤﻠﺔ ﯾﺘﻢ اﺳﺘﺨﺪام اﻟﻜﺎﺋﻦ ) (documentوذﻟﻚ ﻟﻜﺘﺎﺑﺔ ﻋﻦ ﻃﺮﯾﻖ اﻟﺪاﻟﺔ ) ( writeﻣﺎ ﺑﺪاﺧﻞ
اﻷﻗﻮاس اﻟﺘﻲ ﺷﻜﻠﻬﺎ ) ( وﺑﯿﻨﻬﺎ ﻋﻼﻣﺔ " " .ﺛﻢ ﺑﻌﺪ ذﻟﻚ ﯾﺘﻢ ﻗﻔﻞ اﻟﻘﻮس اﻟﺬي ﺷﻜﻠﻪ } { وﻫﻨﺎ اﺳﺘﺨﺪﻣﻨﺎ
اﻷﻗﻮاس } { وذﻟﻚ ﻓﻲ ﺣﺎﻟﺔ أﻧﻚ ﺗﺮﯾﺪ ﺗﻨﻔﯿﺬ أﻛﺜﺮ ﻣﻦ أﻣﺮ ﻋﻨﺪﻣﺎ ﺗﻜﻮن ﻗﯿﻤﺔ اﻟﻤﺘﻐﯿﺮ iﺗﺴﺎوي اﻟﻘﯿﻤﺔ
اﻟﻤﻮﺟﻮدة أﻣﺎم ﻛﻠﻤﺔ .caseﺛﻢ ﺑﻌﺪ ذﻟﻚ ﯾﺘﻢ ﻛﺘﺎﺑﺔ اﻷﻣﺮ ; breakوذﻟﻚ ﻟﻠﺨﺮوج ﻣﻦ ﺟﻤﻠﺔ اﻟﺘﺤﻜﻢ
. switch
ﻣﻼﺣﻈﺔ :ﻣﻦ اﻟﻀﺮوري ﻛﺘﺎﺑﺔ ﻛﻠﻤﺔ ; breakﺑﻌﺪ ﻛﻞ caseوذﻟﻚ ﻟﻤﻨﻊ اﻻﻧﺘﻘﺎل و ﺗﻨﻔﯿﺬ ﺑﺎﻗﻲ اﻟﺤﺎﻻت
اﻟـ caseاﻷﺧﺮى .
١٤و -١٥ﻧﻔﺲ ﻓﻜﺮة اﻟﺨﻄﻮة ١٣-١٢ﻓﯿﻤﺎ ﻋﺪى اﻧﻪ ﯾﺘﻢ اﻟﺘﺄﻛﺪ ﻣﻦ أن اﻟﻘﯿﻤﺔ اﻟﻤﺘﻐﯿﺮ iﺗﺴﺎوي اﻟﻘﯿﻤﺔ
اﻟﻤﻮﺟﻮدة أﻣﺎم ﻛﻠﻤﺔ caseوﻫﻲ ﺗﺴﺎوي ﻫﻨﺎ ٢ﺛﻢ ﺑﻌﺪ ذﻟﻚ ﯾﺘﻢ ﻛﺘﺎﺑﺔ اﻷﻣﺮ ; breakوذﻟﻚ ﻟﻠﺨﺮوج ﻣﻦ
ﺟﻤﻠﺔ اﻟﺘﺤﻜﻢ . switch
١٦و -١٧ﻧﻔﺲ ﻓﻜﺮة اﻟﺨﻄﻮة ١٣-١٢ﻓﯿﻤﺎ ﻋﺪى اﻧﻪ ﯾﺘﻢ اﻟﺘﺄﻛﺪ ﻣﻦ أن اﻟﻘﯿﻤﺔ اﻟﻤﺘﻐﯿﺮ iﺗﺴﺎوي اﻟﻘﯿﻤﺔ
اﻟﻤﻮﺟﻮدة أﻣﺎم ﻛﻠﻤﺔ caseوﻫﻲ ﺗﺴﺎوي ﻫﻨﺎ ٢ﺛﻢ ﺑﻌﺪ ذﻟﻚ ﯾﺘﻢ ﻛﺘﺎﺑﺔ اﻷﻣﺮ ; breakوذﻟﻚ ﻟﻠﺨﺮوج ﻣﻦ
ﺟﻤﻠﺔ اﻟﺘﺤﻜﻢ . switch
١٨و -١٩ﻧﻔﺲ ﻓﻜﺮة اﻟﺨﻄﻮة ١٣-١٢ﻓﯿﻤﺎ ﻋﺪى اﻧﻪ ﯾﺘﻢ اﻟﺘﺄﻛﺪ ﻣﻦ أن اﻟﻘﯿﻤﺔ اﻟﻤﺘﻐﯿﺮ iﺗﺴﺎوي اﻟﻘﯿﻤﺔ
اﻟﻤﻮﺟﻮدة أﻣﺎم ﻛﻠﻤﺔ caseوﻫﻲ ﺗﺴﺎوي ﻫﻨﺎ ٢ﺛﻢ ﺑﻌﺪ ذﻟﻚ ﯾﺘﻢ ﻛﺘﺎﺑﺔ اﻷﻣﺮ ; breakوذﻟﻚ ﻟﻠﺨﺮوج ﻣﻦ
ﺟﻤﻠﺔ اﻟﺘﺤﻜﻢ . switch
٢٠و -٢١ﻓﻲ ﻫﺬه اﻟﺨﻄﻮة ﯾﺘﻢ وﺿﻊ ﺣﺎﻟﺔ اﻓﺘﺮاﺿﯿﺔ وذﻟﻚ ﯾﻌﻨﻲ أﻧﻪ ﻋﻨﺪ ﻋﺪم ﺗﺤﻘﻖ أﺣﺪ اﻟﺤﺎﻻت اﻟﺴﺎﺑﻘﺔ ﯾﻘﻮم
ﺑﺘﻨﻔﯿﺬ ﻫﺬه اﻟﺤﺎﻟﺔ وﻫﻲ اﻟـ default:ﺣﯿﺚ ﯾﺘﻢ ﺗﻨﻔﯿﺬ ﻣﺎ ﺑﺪاﺧﻞ اﻟﻘﻮس اﻟﺘﻲ ﺷﻜﻠﻬﺎ } { وﻫﻮ
;break
وﻫﻮ اﻟﺬي ﯾﺪل اﻟﻤﺘﺼﻔﺢ أﻧﻪ ﻧﻬﺎﯾﺔ ﺑﺮﻧﺎﻣﺞ اﻟﺠﺎف ﺳﻜﺮﯾﺒﺖ . ></Script -٢٥وﻓﻲ ﻫﺬه اﻟﺨﻄﻮة ﯾﺘﻢ ﻛﺘﺎﺑﺔ
١٦
ﻣﺤﻤﺪ ﺻﺪﻳﻖ ﺣﺴﻦ
٢٦و <body> -٢٧و > </bodyﺣﯿﺚ ﯾﺘﻢ ﻛﺘﺎﺑﺔ داﺧﻞ ﻫﺬا اﻟﺠﺰء ﻣﺤﺘﻮﯾﺎت ﺻﻔﺤﺔ اﻟﻮﯾﺐ اﻟﻔﻌﻠﯿﺔ ﻣﺜﻞ
اﻟﺠﺪاول و اﻟﻨﻤﺎذج و اﻟﺼﻮر و اﻟﺘﻲ ﺳﯿﺮاﻫﺎ اﻟﺰوار ﻟﻬﺬه اﻟﺼﻔﺤﺔ .
ﻣﻼﺣﻈﺔ :ﻫﻨﺎ ﻧﻼﺣﻆ اﻧﻨﺎ ﻟﻢ ﻧﻜﺘﺐ ﺑﺮﻧﺎﻣﺞ اﻟﺠﺎﻓﺎ ﺳﻜﺮﯾﺒﺖ داﺧﻞ ﻣﻨﻄﻘﺔ اﻟـ Bodyﻟﺼﻔﺤﺔ وﻫﻲ اﻟﻤﻨﻄﻘﺔ
اﻟﻤﺤﺼﻮرة ﺑﯿﻦ > <bodyو > </bodyو إﻧﻤﺎ ﻛﺘﺒﻨﺎه ﻓﻲ ﻣﻨﻄﻘﺔ اﻟـ headوﻫﻲ اﻟﻤﻨﻄﻘﺔ اﻟﻤﺤﺼﻮرة ﺑﯿﻦ
> <headو > </headوﻫﺬا ﯾﻌﻨﻲ أﻧﻪ ﯾﻤﻜﻦ ﻛﺘﺎﺑﺔ ﺑﺮﻧﺎﻣﺞ اﻟﺠﺎﻓﺎ ﺳﻜﺮﯾﺒﺖ ﻓﻲ أي ﺟﺰء ﻣﻦ ﻛﻮد أو ﻟﻐﺔ اﻟـ
. HTML
١٧
ﻣﺤﻤﺪ ﺻﺪﻳﻖ ﺣﺴﻦ
WHILE
اﻟﻬﺪف ﻣﻦ ﻋﺒﺎرات اﻟﺘﻜﺮار ﻫﻮ ﺗﻜﺮار أﺟﺰاء ﻣﻦ اﻟﺒﺮﻧﺎﻣﺞ ﻣﺮات وﻣﺮات ﺣﺴﺐ اﻟﺸﺮط اﻟﻌﺪدي أو ﺷﺮط ﻣﻌﯿﻦ
وذﻟﻚ ﻻﺧﺘﺼﺎر ﻛﺘﺎﺑﺔ ﺟﺰء ﻛﺒﯿﺮ ﻣﻦ اﻟﺘﻌﻠﯿﻤﺎت .
;var x = 1
)while (x <= 10
{
;x +2
}
ﻻﺣﻆ اﺳﺘﺨﺪام اﻟﻤﻌﺎﻣﻼت اﻟﻤﻈﻠﻞ ﺑﺎﻷزرق وارﺟﻊ إﻟﻰ اﻟﺠﺪول ﻟﻤﻌﺮﻓﺔ اﺳﺘﺨﺪاﻣﻬﺎ وﻧﻌﻮد إﻟﻰ ﻣﺜﺎﻟﻨﺎ اﻷﻣﺮ
whileﯾﻘﻮم ﺑﻌﻤﻞ ﺗﻜﺮار اﻟﺒﻠﻮك أو أﻣﺮ ﺑﺸﺮط أن ﺗﻜﻮن ﻗﯿﻤﺔ اﻟﻤﺘﻐﯿﺮ xاﺻﻐﺮ ﻣﻦ أو ﺗﺴﺎوي ١٠
و اﻟﺒﻠﻮك اﻟﻤﻄﻠﻮب ﺗﻜﺮاره ﻋﺒﺎرة ﻋﻦ زﯾﺎدة ﻗﯿﻤﺔ اﻟﻤﺘﻐﯿﺮ xﺑﻤﻘﺪار ٢ﺛﻢ ﯾﻘﻮم أﻣﺮ اﻟﺘﻜﺮار ﺑﺎﻟﻜﺸﻒ ﺛﺎﻧﯿﺔ ﻋﻠﻰ
اﻟﻘﯿﻤﺔ ﺣﺘﻰ ﺗﺼﻞ إﻟﻰ اﻟﺸﺮط اﻟﺬي ﯾﻨﻬﻲ ﻋﻤﻠﯿﺔ اﻟﺘﻜﺮار .
١٨
ﻣﺤﻤﺪ ﺻﺪﻳﻖ ﺣﺴﻦ
و اﻵن ﻧﺄﺧﺬ ﻣﺜﺎل ﻛﺎﻣﻞ ﻋﻠﻰ ﻋﺒﺎرة أو ﺟﻤﻠﺔ اﻟﺘﻜﺮار : while
No Statements
١ ><html
٢ ><title>fouth Example</title
٣ ><body
٤ >"<SCRIPT LANGUAGE="javascript
٥ <!--
٦ var ;x = 1
٧ )while (x <= 3
٨ {
٩ ;)""document.write("<h"+x+"> welcome "+x+
١٠ x+1
١١ }
١٢ >--
١٣ ></SCRIPT
١٤ ></body
١٥ ></html
و اﻟﺬي ></html ١و -١٥أوﻻ ﯾﺘﻢ وﺿﻊ tagاﻟﻤﺴﻤﻰ واﻟﺬي ﯾﺪل ﻋﻠﻰ ﺑﺪاﯾﺔ اﻟﺼﻔﺤﺔ > <htmlواﻟـ tag
ﯾﺪل ﻋﻠﻰ ﻧﻬﺎﯾﺔ اﻟﺼﻔﺤﺔ وﯾﺘﻢ وﺿﻊ ﺑﺎﻗﻲ اﻷواﻣﺮ ﻟﻐﺔ .HTML
<title> - ٢و > </titleﺗﺘﯿﺢ ﻟﻚ ﻫﺬه اﻟﻌﻼﻣﺔ أن ﺗﻌﻄﻲ اﻟﺼﻔﺤﺔ ﻋﻨﻮاﻧﺎ واﺿﺤﺎ ﻣﻤﯿﺰا وﯾﻈﻬﺮ ﻫﺬا
اﻟﻌﻨﻮان ﻋﻠﻰ ﻧﺎﻓﺬة اﻟﻤﺴﺘﻌﺮض وﯾﺠﺐ أن ﯾﺤﺘﻮي ﻋﻠﻰ اﻟﻌﻨﻮان ﻋﻠﻰ ﺣﺮوف و أرﻗﺎم ﻓﻘﻂ.
ﺣﯿﺚ ﯾﺘﻢ ﻛﺘﺎﺑﺔ داﺧﻞ ﻫﺬا اﻟﺠﺰء ﻣﺤﺘﻮﯾﺎت ﺻﻔﺤﺔ اﻟﻮب اﻟﻔﻌﻠﯿﺔ . ></body و ><body ٣و -١٤
-٤ﻫﺬا اﻟﺴﻄﺮ ﯾﺠﺐ أن ﯾﻜﻮن أول ﺳﻄﺮ ﻓﻲ أي ﻛﻮد ﺟﺎﻓﺎ ﺳﻜﺮﯾﺒﺖ ﺣﯿﺚ أﻧﻪ ﯾﻨﺒﻪ اﻟﻤﺘﺼﻔﺢ ﺑﺄن ﻣﺎ ﺳﯿﺘﺒﻊ ﻫﺬا
اﻷﻣﺮ ﻫﻮ . Javascript
وﺗﻢ إﻋﻄﺎءه x واﺳﻢ ﻫﺬا اﻟﻤﺘﻐﯿﺮ var - ٦ﻓﻲ ﻫﺬه اﻟﺨﻄﻮة ﺗﻢ ﺗﻌﺮﯾﻒ ﻣﺘﻐﯿﺮ و ذﻟﻚ ﺑﺎﺳﺘﺨﺪام اﻟﻜﻠﻤﺔ
اﻟﻘﯿﻤﺔ . ١
٧و -١٤اﻟﺮﻣﺰ اﻟﺘﺎﻟﻲ <!--ﯾﻘﻮم ﺑﺈﺧﻔﺎء ﻛﻮد اﻟﺠﺎﻓﺎ ﺳﻜﺮﯾﺒﺖ ﻣﻦ اﻟﻤﺴﺘﻌﺮض أو اﻟﻤﺘﺼﻔﺢ اﻟﺬي ﻻ ﯾﺪﻋﻢ ﻟﻐﺔ
اﻟﺠﺎﻓﺎ ﺳﻜﺮﯾﺒﺖ وﺑﻌﺪ اﻻﻧﺘﻬﺎء ﻣﻦ ﻛﺘﺎﺑﺔ ﻛﻮد اﻟﺠﺎف ﺳﻜﺮﯾﺒﺖ ﯾﺘﻢ وﺿﻊ اﻟﺮﻣﺰ اﻟﺘﺎﻟﻲ > . --
٨و -١١ﻓﻲ ﻫﺬه اﻟﺨﻄﻮة ﯾﺘﻢ ﻛﺘﺎﺑﺔ ﻓﺘﺢ ﻗﻮس ﺟﻤﻠﺔ اﻟﺘﺤﻜﻢ whileو وﯾﻜﻮن اﻟﻘﻮس ﻋﻠﻰ ﺷﻜﻞ { وﯾﺠﺐ أن
ﯾﻐﻠﻖ ﺑﺎﻟﻘﻮس اﻟﺬي ﺷﻜﻠﻪ } ﻛﻤﺎ ﻓﻲ اﻟﻤﺜﺎل .
-٩ﻫﻨﺎ اﺳﺘﺨﺪﻣﻨﺎ ﺟﻤﻠﺔ اﻟﺘﻜﺮار whileواﻟﺸﺮط اﻟﻤﻮﺟﻮد ﻓﻲ اﻟﻤﺜﺎل ﻣﻌﻨﺎه إذا ﻛﺎﻧﺖ ﻗﯿﻤﺔ اﻟﻤﺘﻐﯿﺮ xأﻗﻞ ﻣﻦ
أو ﯾﺴﺎوي ) ٣أي ﻋﻨﺪ ﺗﺤﻘﻖ اﻟﺸﺮط ( ﻓﺈﻧﻪ ﯾﻨﻔﺬ اﻷواﻣﺮ اﻟﺘﻲ ﺑﻌﺪ ﺟﻤﻠﺔ whileو ﯾﺘﻢ وﺿﻊ اﻷﻗﻮاس }{ و
ذﻟﻚ ﯾﺪل ﻋﻠﻰ أﻧﻪ ﯾﺠﺐ ﺗﻨﻔﯿﺬ ﻛﻞ اﻷواﻣﺮ اﻟﻤﻮﺟﻮدة ﺑﺪاﺧﻞ اﻷﻗﻮاس .
١٩
ﻣﺤﻤﺪ ﺻﺪﻳﻖ ﺣﺴﻦ
-١٠اﻟﻌﺒﺎرة ;)"" document.write("<h"+x+"> welcome "+x+و ﻓﻲ ﻫﺬا اﻟﺴﻄﺮ ﯾﺘﻢ إﺳﺘﺨﺪام اﻟﻜﺎﺋﻦ
) (documentوذﻟﻚ ﻟﻜﺘﺎﺑﺔ ﻋﻦ ﻃﺮﯾﻖ اﻟﺪاﻟﺔ ) (writeﻣﺎ ﺑﺪاﺧﻞ اﻷﻗﻮاس .وﻣﺎ ﺑﺪاﺧﻞ اﻷﻗﻮاس ﻫﻮ ﻋﺒﺎرة
ﻋﻦ أﻣﺮ ﻋﺎدي ﻣﻦ أواﻣﺮ HTMLاﻟﺬي ﯾﺄﻣﺮ اﻟﻤﺘﺼﻔﺢ ﺑﺈﻇﻬﺎر اﻟﺠﻤﻠﺔ " """ "<h"+x+"> welcome "+x+
واﻻن ﻟﻨﺄﺧﺬ ﻫﺬه اﻟﺠﻤﻠﺔ وﻧﺸﺮﺣﻬﺎ ﺑﺎﻟﺘﻔﺼﯿﻞ
اﻟﺨﻄﻮة اﻷوﻟﻰ:
ﺳﻮف ﯾﺘﻢ أوﻻ أرﺳﺎل اﻟﺠﻤﻠﺔ اﻟﺘﺎﻟﯿﺔ اﻟﻰ اﻟﻤﺴﺘﻌﺮض ﻋﻠﻰ اﻟﺼﻮرة اﻟﺘﺎﻟﯿﺔ وﻫﻲ
> " ﯾﺘﻢ وﺿﻊ ﻗﯿﻤﺔ اﻟﻤﺘﻐﯿﺮ xوﻫﻲ ﻓﻲ أول ﻣﺮة ﺗﺴﺎوي < h " ١
إذا ﯾﺼﺒﺢ ﺷﻜﻞ اﻟﺠﻤﻠﺔ اﻟﺘﺎﻟﻲ > < h1وﻫﺬا اﻟﺸﻜﻞ ﯾﻔﻬﻤﻪ اﻟﻤﺴﺘﻌﺮض ﻋﻠﻰ أﻧﻚ ﺗﺮﯾﺪ أن ﺗﻄﺒﻊ ﻋﻨﻮان
وﯾﻜﻮن اﻟﻤﺴﺘﻮى ﻟﻬﺬا اﻟﻌﻨﻮان ﻫﻮ . ١ﺛﻢ ﺑﻌﺪ ذﻟﻚ ﺳﻮف ﯾﻘﻮم ﺑﻄﺒﺎﻋﺔ اﻟﻜﻠﻤﺔ welcomeﻋﻠﻰ ﺻﻔﺤﺔ اﻻﻧﺘﺮﻧﺖ
.وﻣﻦ ﺛﻢ ﯾﻌﻮد اﻟﻰ x+1 ﺛﻢ ﺑﻌﺪ ذﻟﻚ ﯾﺘﻢ زﯾﺎدة ﻗﯿﻤﺔ اﻟﻤﺘﻐﯿﺮ xﺑﻤﻘﺪار واﺣﺪ وذﻟﻚ ﻋﻦ ﻃﺮﯾﻖ ﻛﺘﺎﺑﺔ اﻟﺠﻤﻠﺔ
. while ﺟﻤﻠﺔ whileو ﯾﻜﺮر ﻧﻔﺲ اﻟﺸﻲء ﺣﯿﺚ ﯾﺨﺘﺒﺮ اﻟﺸﺮط و ﻋﻨﺪ ﺗﺤﻘﻘﻪ ﯾﺨﺮج ﻣﻦ ﺟﻤﻠﺔ
وﻫﻮ اﻟﺬي ﯾﺪل اﻟﻤﺘﺼﻔﺢ أﻧﻪ ﻧﻬﺎﯾﺔ ﺑﺮﻧﺎﻣﺞ اﻟﺠﺎف ﺳﻜﺮﯾﺒﺖ . ></Script -١٣وﻓﻲ ﻫﺬه اﻟﺨﻄﻮة ﯾﺘﻢ ﻛﺘﺎﺑﺔ
٢٠
ﻣﺤﻤﺪ ﺻﺪﻳﻖ ﺣﺴﻦ
اﻟﺪوال
ﻫﻨﺎك دوال ﺗﻌﻄﯿﻬﺎ ﻟﻚ اﻟﻠﻐﺔ وﻫﻲ دوال ﺟﺎﻫﺰة ﻹﺟﺮاء ﻋﻤﻠﯿﺎت ﻣﻌﯿﻨﻪ ﺳﻮف ﻧﺘﻌﺮض ﻟﻬﺎ ﻓﯿﻤﺎ ﺑﻌﺪ واﻟﺪوال
اﻷﺧﺮى وﻫﻲ اﻷﻛﺜﺮ اﺳﺘﺨﺪاﻣﺎ ﻫﻲ اﻟﺘﻲ ﺳﻮف ﺗﻨﺸﺌﻬﺎ أﻧﺖ ﺑﻨﻔﺴﻚ ﻣﺜﺎل :
No Statements
١ ><html
٢ ><head
٣ ><title>useing function</title
٤ >"<SCRIPT LANGUAGE="javascript
٥ <!--
٦ )(function clickme
٧ {
٨ ;)"alert("welocm to you
٩ }
١٠ >--
١١ ></SCRIPT
١٢ ></head
١٣ ><body
١٤ "=<input type="button" value hi >';)(" onclick='clickme
١٥ ></body
١٦ ></html
و اﻟﺬي ></html ١و -١٦أوﻻ ﯾﺘﻢ وﺿﻊ tagاﻟﻤﺴﻤﻰ واﻟﺬي ﯾﺪل ﻋﻠﻰ ﺑﺪاﯾﺔ اﻟﺼﻔﺤﺔ > <htmlواﻟـ tag
ﯾﺪل ﻋﻠﻰ ﻧﻬﺎﯾﺔ اﻟﺼﻔﺤﺔ وﯾﺘﻢ وﺿﻊ ﺑﺎﻗﻲ اﻷواﻣﺮ ﻟﻐﺔ .HTML
ﯾﻮﺿﻊ ﺑﯿﻨﻬﻤﺎ ﻋﻨﻮان اﻟﺼﻔﺤﺔ . ></head و ><head ٢و- ١٢
<title> - ٣و > </titleﺗﺘﯿﺢ ﻟﻚ ﻫﺬه اﻟﻌﻼﻣﺔ أن ﺗﻌﻄﻲ اﻟﺼﻔﺤﺔ ﻋﻨﻮاﻧﺎ واﺿﺤﺎ ﻣﻤﯿﺰا وﯾﻈﻬﺮ ﻫﺬا
اﻟﻌﻨﻮان ﻋﻠﻰ ﻧﺎﻓﺬة اﻟﻤﺴﺘﻌﺮض وﯾﺠﺐ أن ﯾﺤﺘﻮي ﻋﻠﻰ اﻟﻌﻨﻮان ﻋﻠﻰ ﺣﺮوف و أرﻗﺎم ﻓﻘﻂ.
-٤ﻫﺬا اﻟﺴﻄﺮ ﯾﺠﺐ أن ﯾﻜﻮن أول ﺳﻄﺮ ﻓﻲ أي ﻛﻮد ﺟﺎﻓﺎ ﺳﻜﺮﯾﺒﺖ ﻛﻤﺎ ذﻛﺮﻧﺎه ﻓﻲ اﻟﻤﺜﺎل اﻷول ﺣﯿﺚ أﻧﻪ ﯾﻨﺒﻪ
اﻟﻤﺘﺼﻔﺢ ﺑﺄن ﻣﺎ ﺳﯿﺘﺒﻊ ﻫﺬا اﻷﻣﺮ ﻫﻮ . Javascript
٥و -١٠اﻟﺮﻣﺰ اﻟﺘﺎﻟﻲ <!--ﯾﻘﻮم ﺑﺈﺧﻔﺎء ﻛﻮد اﻟﺠﺎﻓﺎ ﺳﻜﺮﯾﺒﺖ ﻣﻦ اﻟﻤﺴﺘﻌﺮض أو اﻟﻤﺘﺼﻔﺢ اﻟﺬي ﻻ ﯾﺪﻋﻢ ﻟﻐﺔ
اﻟﺠﺎﻓﺎ ﺳﻜﺮﯾﺒﺖ وﺑﻌﺪ اﻻﻧﺘﻬﺎء ﻣﻦ ﻛﺘﺎﺑﺔ اﻟﻜﻮد ﯾﺘﻢ وﺿﻊ اﻟﺮﻣﺰ اﻟﺘﺎﻟﻲ > . --
٢١
ﻣﺤﻤﺪ ﺻﺪﻳﻖ ﺣﺴﻦ
-٦ﯾﺘﻢ ﻛﺘﺎﺑﺔ اﻟﻜﻠﻤﺔ functionوﻫﻲ ﻛﻠﻤﺔ ﻣﺤﺠﻮزة ﻓﻲ اﻟﻐﺔ وﺗﻘﻮم ﻫﺬه اﻟﻜﻠﻤﺔ ﺑﺘﻌﺮﯾﻒ داﻟﺔ ﺳﻮف ﯾﺘﻢ
اﻧﺸﺎءﻫﺎ و أﺳﻢ ﻫﺬه اﻟﺪاﻟﺔ ﻓﻲ ﻣﺜﺎﻟﻨﺎ ﻫﻮ )( clickmeو ﻋﻨﺪﻣﺎ ﺳﻨﺴﺘﺪﻋﻲ اﻟﺪاﻟﺔ ﻣﻦ أي ﻣﻜﺎن ﻣﻦ اﻟﺼﻔﺤﺔ
ﯾﺠﺐ أن ﺗﻜﻮن ﺑﻨﻔﺲ اﻻﺳﻢ.
و وﯾﻜﻮن اﻟﻘﻮس ﻋﻠﻰ ﺷﻜﻞ { )(function clickme ٧و -٩ﻓﻲ ﻫﺬه اﻟﺨﻄﻮة ﯾﺘﻢ ﻛﺘﺎﺑﺔ ﻓﺘﺢ ﻗﻮس ﻟﺪاﻟﺔ
وﯾﺠﺐ أن ﯾﻐﻠﻖ ﺑﺎﻟﻘﻮس اﻟﺬي ﺷﻜﻠﻪ } ﻛﻤﺎ ﻓﻲ اﻟﻤﺜﺎل .
-٨اﺳﺘﺨﺪام اﻷﻣﺮ ;)" alert("welocm to youﺣﯿﺚ ﯾﻘﻮم ﻫﺬا اﻷﻣﺮ ﺑﺈﻇﻬﺎر رﺳﺎﻟﺔ ﺗﻨﺒﯿﻪ ﯾﺘﻢ ﻓﯿﻬﺎ ﻛﺘﺎﺑﺔ
اﻟﺠﻤﻠﺔ اﻟﻤﺮاد إﻇﻬﺎرﻫﺎ وﺗﻨﺒﯿﻪ اﻟﻤﺴﺘﺨﺪم ﺑﻬﺎ وﻓﻲ ﻣﺜﺎﻟﻨﺎ ﺳﻮف ﯾﻘﻮم ﻫﺬا اﻻﻣﺮ ﺑﺈﻇﻬﺎر اﻟﺠﻤﻠﺔ اﻟﺘﺎﻟﯿﺔ welocm
to youو ﻻ ﺗﻨﺴﻰ أن اﻟﺠﻤﻠﺔ ﯾﺠﺐ وﺿﻌﻬﺎ ﻓﻲ ﺑﯿﻦ ﻋﻼﻣﺘﻲ ﺗﻨﺼﯿﺺ ﻛﻤﺎ ﻓﻲ اﻟﺘﺎﻟﻲ :
وﻫﻮ اﻟﺬي ﯾﺪل اﻟﻤﺘﺼﻔﺢ أﻧﻪ ﻧﻬﺎﯾﺔ ﺑﺮﻧﺎﻣﺞ اﻟﺠﺎف ﺳﻜﺮﯾﺒﺖ . ></Script -١١وﻓﻲ ﻫﺬه اﻟﺨﻄﻮة ﯾﺘﻢ ﻛﺘﺎﺑﺔ
ﺣﯿﺚ ﯾﺘﻢ ﻛﺘﺎﺑﺔ داﺧﻞ ﻫﺬا اﻟﺠﺰء ﻣﺤﺘﻮﯾﺎت ﺻﻔﺤﺔ اﻟﻮب اﻟﻔﻌﻠﯿﺔ . ></body و ><body ١٣و-١٥
-١٤ﻓﻲ ﻫﺬه اﻟﺨﻄﻮة ﻓﻘﻂ اﺳﺘﺨﺪﻣﻨﺎ ﻟﻐﺔ HTMLﺣﯿﺚ ﺗﻢ ﺗﻌﺮﯾﻒ زر وﻫﻮ ﻣﻦ ﻧﻮع " type="buttonوﻗﺪ
اﻋﻄﯿﻨﺎه اﻟﻘﯿﻤﺔ " value=" hiوﻫﺬه اﻟﻜﻠﻤﺔ اﻟﺘﻲ داﺧﻞ valueﻣﺎ ﺳﯿﻈﻬﺮ وﻫﻮ ﻓﻲ ﻣﺜﺎﻟﻨﺎ ﻛﻠﻤﺔ hiﺛﻢ
ﺑﻌﺪ ذﻟﻚ ﺗﻢ ﻛﺘﺎﺑﺔ اﻟﻜﻠﻤﺔ
٢٢
ﻣﺤﻤﺪ ﺻﺪﻳﻖ ﺣﺴﻦ
اﻟﻨﻤﺎذج
.( forms ) ( ﺗﺠﺪﻫﺎ ﻓﻲ اﻟﺼﻔﺤﺔ ﻓﻲ ﻣﺼﻔﻮﻓﺔ ﺗﺴﻤﻰForms ) اﻟﺠﺎﻓﺎ ﺳﻜﺮﯾﺒﺖ ﺗﻘﻮم ﺑﻮﺿﻊ ﻛﻞ اﻟﻮﺛﺎﺋﻖ
اﻟﻨﻤﻮذج. ( ﻓﻲ ﻫﺬه اﻟﻤﺼﻔﻮﻓﺔindex ) ( وذﻟﻚ ﻋﻦ ﻃﺮﯾﻖ اﻟﻔﻬﺮسform ) وﯾﻤﻜﻨﻚ اﻟﻮﺻﻮل ﻟﻜﻞ ﻧﻤﻮذج
( form ) وﯾﻤﻜﻦ اﻟﺘﻌﺎﻣﻞ ﻣﻊ اﻟﻨﻤﻮذج. وﻫﻜﺬا١ و اﻟﻨﻤﻮذج اﻟﺜﺎﻧﻲ ﻟﻪ اﻟﻔﻬﺮس رﻗﻢ، ٠ اﻷول ﻟﻪ اﻟﻔﻬﺮس رﻗﻢ
. ﻋﻦ ﻃﺮﯾﻖ اﺳﻢ اﻟﻨﻤﻮذج
: وﻟﻜﻲ ﯾﺘﻢ ﻓﻬﻢ ﻛﯿﻔﯿﺔ اﻟﺘﻌﺎﻣﻞ ﻣﻊ اﻟﻨﻤﺎذج ﻧﻘﻮم ﺑﺄﺧﺬ ﺑﻌﺾ اﻷﻣﺜﻠﺔ
No Statements
١ <html>
٢ <head>
٣ </title>< اﻟﺘﻌﺎﻣﻞ ﻣﻊ اﻟﻮﺛﺎﺋﻖtitle>
٤ <SCRIPT LANGUAGE="javascript">
٥ <!--
٦ function testform()
٧ {
٨ // test the form no.0
٩ if(document.forms[0].elements[0].value==""
١٠ ||document.forms[0].elements[1].value==""
١١ ||document.forms[0].elements[2].value=="")
١٢ {
١٣ alert(";)"ﳚﺐ اﻟﻜﺘﺎﺑﺔ ﰲ ﻛﻞ اﳊﻘﻮل
١٤ }
١٥ }
١٦ -->
١٧ </SCRIPT>
١٨ </head>
١٩ <body>
٢٠ <center>
٢١ <form method=post onSubmit="return testform()">
٢٢ <tabel>
٢٣ <tr>
٢٤ <td>Name : </td>
٢٥ <td><input type="text" name="name" ></td></tr>
٢٦ <tr><td>Address :</td>
٢٧ <td><input type="text" name="address" ></td></tr>
٢٨ <tr><td>City :</td>
٢٩ <td><input type="text" name="city" ></td></tr>
٣٠ </tabel>
٣١ <p>
٣٢ <input type="submit" name=" "إرﺳﺎل اﻟﺒﯿﺎﻧﺎتvalue="submit">
٣٣ </form>
٣٤ </center>
٣٥ </body>
٣٦ </html>
٢٣
ﻣﺤﻤﺪ ﺻﺪﻳﻖ ﺣﺴﻦ
ﺷﺮح اﻟﻜﻮد:
أوﻻً ﻗﻤﻨﺎ ﺑﺈﻧﺸﺎء اﻟـ formوذﻟﻚ ﺑﻠﻐﺔ اﻟـ HTMLوﻫﻮ اﻟﺠﺰء اﻟﻤﺤﺎط ﺑﺎﻟﻮن اﻷزرق
ﺣﯿﺚ ﺗﻢ إﻧﺸﺎء formو ﺣﺪدﻧﺎ ﻃﺮﯾﻘﺔ إرﺳﺎل ﻫﺬه formوذﻟﻚ ﺑﻄﺮﯾﻘﺔ اﻟـ method=postواﺳﺘﺨﺪﻣﻨﺎ اﻟﺤﺪث
onSubmitوﻫﻮ ﺣﺪث اﻟﻀﻌﻂ ﻋﻠﻰ زر )إرﺳﺎل اﻟﺒﯿﺎﻧﺎت ( ﻣﻦ ﺻﻔﺤﺔ اﻟﻮﯾﺐ ﺣﯿﺚ ﺳﻮف ﯾﺘﻢ إﺳﺘﺪﻋﺎء داﻟﺔ
)( testformوﻫﻲ اﻟﺪاﻟﺔ ﻣﻜﺘﻮﺑﺔ ﺑﻠﻐﺔ اﻟﺠﺎﻓﺎ ﺳﻜﺮﯾﺒﺖ و اﻟﺘﻲ ﺗﻘﻮم ﺑﻔﺤﺺ اﻟﺤﻘﻮل ﻓﻲ اﻟـ formو اﻟﺘﺄﻛﺪ ﻣﻦ
اﻟﻜﺘﺎﺑﺔ ﻓﻲ ﻛﻞ اﻟﺤﻘﻮل وﻋﺪم ﺗﺮك أﺣﺪ اﻟﺤﻘﻮل ﻓﺎرغ .
ﺛﻢ ﻗﻤﻨﺎ ﺑﺈﻧﺸﺎء اﻟﺤﻘﻮل اﻟﺨﺎﺻﺔ ﺑﺎﻟـ formوﺑﻌﺪ ذﻟﻚ أﻧﺸﺄﻧﺎ زر اﻹرﺳﺎل ﻋﻦ ﻃﺮﯾﻖ ا ﻻﻣﺮ inputوﺣﺪدﻧﺎ ﻧﻮع
ﻫﺬا اﻟﻤﺪﺧﻞ أﻧﻪ ﻣﻦ ﻧﻮع زر إرﺳﺎل و ﺗﻢ إﻋﻄﺎءه اﻻﺳﻢ ) إرﺳﺎل اﻟﺒﯿﺎﻧﺎت ( .
وﻫﻮ اﻟﺠﺰء اﻟﻤﺤﺎط ﺑﺎﻟﻮن اﻻﺣﻤﺮ وﻫﻮ اﻟﺠﺰء اﻟﺨﺎص ﺑﺎﻟﺠﺎﻓﺎ )(testform واﻻن ﺳﻮف ﻧﺘﺤﺪث ﻋﻦ اﻟﺪاﻟﺔ
ﺳﻜﺮﯾﺒﺖ
ﻧﻼﺣﻆ ﻓﻲ أﻧﻪ ﻋﻨﺪ ﺗﻨﻔﯿﺬ اﻟﺪاﻟﺔ ﻓﺈﻧﻪ ﯾﺴﺘﺨﺪم ﺟﻤﻠﺔ Ifاﻟﺸﺮﻃﯿﺔ ﺣﯿﺚ أﻧﻪ ﯾﻘﻮم ﺑﻔﺤﺺ اﻟﻔﻮرم رﻗﻢ ﺻﻔﺮ
) ] ( Form[0وﺣﺪدﻧﺎ اﻟﻌﻨﺼﺮ رﻗﻢ ﺻﻔﺮ أﯾﻀﺎ ) ] ( elements[0ﻓﻲ ﻧﻔﺲ ) ] ( Form[0وﻫﻮ ﻓﻲ
ﻣﺜﺎﻟﻨﺎ اﻟﺤﻘﻞ nameوﺣﺪدﻧﺎ أﯾﻀﺎ اﻟﻘﯿﻤﺔ اﻟﺘﻲ ﺑﺪاﺧﻠﻪ إذا ﻛﺎﻧﺖ ﻓﺎرﻏﺔ أي ﻻ ﯾﻮﺟﺪ أي ﺷﻲء ﻣﻜﺘﻮب وﺛﻢ ﺑﻌﺪ
ذﻟﻚ اﺳﺘﺨﺪﻣﻨﺎ اﻟﻌﻼﻗﺔ اﻟﻤﻨﻄﻘﯿﺔ ) || ( وذﻟﻚ إذا ﻟﻨﻘﻮم ﺑﻔﺤﺺ اﻟﻌﻨﺼﺮ رﻗﻢ واﺣﺪ أﯾﻀﺎ ) ]( elements[1
ﻓﻲ ﻧﻔﺲ ) ] ( Form[0وﻫﻮ ﻓﻲ ﻣﺜﺎﻟﻨﺎ اﻟﺤﻘﻞ اﻟﻤﺴﻤﻰ addressو ﺣﺪدﻧﺎ أﯾﻀﺎ اﻟﻘﯿﻤﺔ اﻟﺘﻲ ﺑﺪاﺧﻠﻪ إذا
ﻛﺎﻧﺖ ﻓﺎرﻏﺔ ﺛﻢ وﺿﻌﻨﺎ اﻟﻌﻼﻗﺔ اﻟﻤﻨﻄﻘﯿﺔ ) || ( وذﻟﻚ أﻧﻪ إذا وﺟﺪ اﺣﺪ اﻟﺤﻘﻮل ﻓﺎرﻏﺔ ﻓﺈﻧﻪ ﺳﻮف ﯾﻘﻮم ﺑﺘﻨﻔﯿﺬ
اﻻﻣﺮ )( alertوﺳﻮف ﯾﻈﻬﺮ اﻟﺮﺳﺎﻟﺔ اﻟﺘﺎﻟﯿﺔ ) ﯾﺠﺐ اﻟﻜﺘﺎﺑﺔ ﻓﻲ ﻛﻞ اﻟﺤﻘﻮل (
٢٤
ﻣﺤﻤﺪ ﺻﺪﻳﻖ ﺣﺴﻦ
: ﻣﺜﺎل آﺧﺮ ﺑﺈﻧﺸﺎء ﻗﺎﺋﻤﺔ ﻣﻨﺴﺪﻟﺔ
No Statements
١ <html>
٢ <head>
٣ </title><ﻗﺎﺋﻤﺔ ﻣﻨﺴﺪﻟﺔtitle>
٤ <script language="javascript">
٥ function formHandler()
٦ {
Var URL=
٧ document.pulldown.selectname.options
[document.pulldownMenu.yourSelect.selectIndex].value
٨ window.location.href=URL
٩ }
١٠ </script>
١١ choose a search engine:
١٢ <form name="pulldownMenu">
١٣ <select name="yourSelect" onChange="formHandler()">
١٤ <option value="http://www.msn.com">MSN
١٥ <option value="http://www.yahoo.com">Yahoo
١٦ <option value="http://www.altavista.com">Altavista
١٧ </select>
١٨ </form>
١٩ </html>
: ﺷﺮح اﻟﻜﻮد
وﻫﻮ اﻟﺠﺰء اﻟﻤﺤﺎط ﺑﺎﻟﻮن اﻷزرق و ذﻟﻚ ﺑﺈﺗﺒﺎع اﻟﺨﻄﻮاتHTML ﯾﺘﻢ إﻧﺸﺎء اﻟﻘﺎﺋﻤﺔ اﻟﻤﻨﺴﺪﻟﺔ وذﻟﻚ ﺑﻠﻐﺔ اﻟـ
: اﻟﺘﺎﻟﯿﺔ
< وﻓﻲ ﻫﺬه اﻟﺤﺎﻟﺔform name="pulldownMenu"> وﻫﻮtag وذﻟﻚ ﻋﻦ ﻃﺮﯾﻖ ﻛﺘﺎﺑﺔ اﻟـForm ﯾﺘﻢ إﻧﺸﺎء اﻟـ
< وﻫﻮselect > tag ﺛﻢ ﺑﻌﺪ ذﻟﻚ اﺳﺘﺨﺪﻣﻨﺎ اﻟـpulldownMenu وﺗﻢ ﺗﺴﻤﯿﺘﻪForm ﻗﻤﻨﺎ ﺑﺈﻧﺸﺎء اﻟـ
، اﻟﺬي ﯾﻘﻮم ﺑﺈﻧﺸﺎء اﻟﻘﺎﺋﻤﺔ اﻟﻤﻨﺴﺪﻟﺔ واﻟﯿﻚ ﻫﺬا اﻻﻣﺮ
< وﻣﻦ ﺛﻢ ﺳﻤﯿﻨﺎ ﻫﺬه اﻟﻘﺎﺋﻤﺔ ﺑﺎﻻﺳﻢselect name="yourSelect" onChange="formHandler()">
وﻫﻮ ﺣﺪث ﺗﻐﯿﺮ ﻗﯿﻤﺔ ﻣﻌﯿﻨﺔ ﻟﺤﻘﻞonChang() ﺑﺎﻹﺿﺎﻓﺔ أﻧﻪ إﺿﻔﻨﺎ ﻋﻨﺪ اﻻﺧﺘﯿﺎر اﻟﺤﺪثyourSelect
ﺛﻢ ﺑﻌﺪ ذﻟﻚ ﻧﻘﻮم ﺑﻮﺿﻊ اﻟﺨﯿﺎرات، واﻟﺘﻲ ﺳﻮف ﻧﺸﺮﺣﻬﺎ ﺑﻌﺪ ﻗﻠﯿﻞformHandler() ﻣﺎ ﺑﺤﯿﺚ ﯾﺘﻢ ﺗﻨﻔﯿﺬ اﻟﺪاﻟﺔ
value وﻫﻲattribute < وﺑﻌﺪ ذﻟﻚ ﻧﻀﻊ ﻟﻜﻞ أﺧﺘﯿﺎر ﻗﯿﻤﺘﻪ ﻋﻦ ﻃﺮﯾﻖ اﻟـoption > tag ﻋﻦ ﻃﺮﯾﻖ اﻟـ
ﺣﯿﺚ ﯾﺤﺘﻮي ﻫﺬا اﻻﻣﺮ. <option value="http://www.msn.com">MSN وأﺣﺪ اﻟﺨﯿﺎرات اﻟﻤﻮﺟﻮدة ﻓﻲ اﻟﻤﺜﺎل
. http://www.msn.com ( اﻟﺘﺎﻟﯿﺔvalue ) واﻟﺬي ﻟﻪ اﻟﻘﯿﻤﺔMSN ﻋﻠﻰ اﻟﺨﯿﺎر
٢٥
ﻣﺤﻤﺪ ﺻﺪﻳﻖ ﺣﺴﻦ
وﻫﻮ اﻟﺠﺰء اﻟﻤﺤﺎط ﺑﺎﻟﻮن اﻻﺣﻤﺮ وﻫﻮ اﻟﺠﺰء اﻟﺨﺎص ﺑﺎﻟﺠﺎﻓﺎ )(testform واﻻن ﺳﻮف ﻧﺘﺤﺪث ﻋﻦ اﻟﺪاﻟﺔ
ﺳﻜﺮﯾﺒﺖ:
ﻧﻼﺣﻆ ﻋﻨﺪ ﺗﻨﻔﯿﺬ اﻟﺪاﻟﺔ )( formHandlerﻧﻘﻮم ﺑﺎﻟﺘﺎﻟﻲ أوﻻً ﻧﻘﻮم ﯾﺘﻌﺮﯾﻒ ﻣﺘﻐﯿﺮ ﺳﻤﯿﻨﺎه URLوﺟﻌﻠﻨﺎه ﯾﺴﺎوي
اﺳﻢ اﻟﻔﻮرم ﺑﺈﺿﺎﻓﺔ إﻟﻰ اﻟﻘﺎﺋﻤﺔ اﻟﻤﻨﺴﺪﻟﺔ وإﯾﻀﺎ اﻟﺨﯿﺎر اﻟﺬي ﺗﻢ أﺧﺘﯿﺎرة ﻣﻊ اﻟﻘﯿﻤﺔ اﻟﺘﻲ ﻣﻊ ﻫﺬا اﻟﺨﯿﺎر.
ﺛﻢ ﺑﻌﺪ ذﻟﻚ أﺳﺘﺨﺪام ﻫﺬا اﻟﻤﺘﻐﯿﺮ واﻟﺬي ﯾﺤﺘﻮي ﻋﻠﻰ اﺳﻢ ﻣﻮﻗﻊ ﻣﺎ ﻣﺜﻼً http://www.yahoo.comﺣﯿﺚ ﺳﻮف
ﻧﺴﺘﺨﺪم ﻫﺬه اﻟﺠﻤﻠﺔ window.location.href=URLﺣﯿﺚ ﺳﺎوﯾﻨﺎﻫﺎ ﻣﻊ اﻟﻤﺘﻐﯿﺮ اﻟﺬي ﺑﻪ اﺳﻢ ﻣﻮﻗﻊ ﻣﺎ وﻫﺬه
اﻟﺠﻤﻠﺔ ﺳﻮف ﺗﻘﻮم ﺑﺎﻻﻧﺘﻘﺎل إﻟﻰ ﻫﺬا اﻻرﺗﺒﺎط أو اﻟﺼﻔﺤﺔ اﻟﻤﻮﺟﻮدة ﻓﻲ ﻫﺬا اﻟﻤﺘﻐﯿﺮ
٢٦
ﻣﺤﻤﺪ ﺻﺪﻳﻖ ﺣﺴﻦ
اﻷﺣﺪاث
ﻣﻘﺪﻣﺔ :
اﻟﻮﯾﻨﺪوز ﻫﻮ ﻣﺤﯿﻂ رﺳﺎﺋﻠﻲ ﯾﺘﻢ إرﺳﺎل رﺳﺎﻟﺔ ﻋﻨﺪ ﺣﺪوث ﺣﺪث ﻣﺜﻞ ﻣﺮور اﻟﻤﺎوس ﻓﻮق ﺻﻮرة أو ﻓﻮق زر
ﻣﻌﯿﻦ أو اﻟﺘﺮﻛﯿﺰ ﻋﻠﻰ ﻧﺎﻓﺬة أو ﺿﻐﻂ اﻟﺰر اﻷﯾﻤﻦ أو اﻷﯾﺴﺮ أو اﻷوﺳﻂ ﻟﻠﻤﺎوس وﻫﻜﺬا ﻧﺴﺘﻐﻞ ﻫﺬه اﻷﺣﺪاث
ﻟﺘﻨﺸﯿﻂ ﺟﺰء أو ﻛﻞ ﻣﻦ ﺑﺮﻧﺎﻣﺞ ﺟﺎﻓﺎ ﺳﻜﺮﯾﺒﺖ ﻟﯿﻘﻮم ﺑﻌﻤﻞ وﻇﺎﺋﻔﻪ اﻟﻤﺼﻤﻢ ﻣﻦ اﺟﻠﻬﺎ وﺳﻨﺘﻌﺮض ﻣﻌﺎ ﺑﻌﺾ
اﻷﻣﺜﻠﺔ واﻷﺣﺪاث ﻟﺸﺮح اﻟﻔﻜﺮة :
و اﻵن ﺳﻮف ﻧﺄﺧﺬ أﻣﺜﻠﺔ ﺗﻮﺿﺢ ﻛﯿﻔﯿﺔ أﺳﺘﺨﺪم اﻷﺣﺪاث ﻓﻲ ﺻﻔﺤﺔ اﻟﻮﯾﺐ أرﺟﻮ أن ﺗﻨﺘﻘﻞ إﻟﻰ اﻟﺼﻔﺤﺔ اﻟﺘﺎﻟﯿﺔ.
٢٧
ﻣﺤﻤﺪ ﺻﺪﻳﻖ ﺣﺴﻦ
: onClick() ﻣﺜﺎل ﻋﻠﻰ اﻟﺤﺪث
No Statements
١ <html>
٢ <head>
٣ <title>Onclick alert message</title>
٤ <script language="javascript">
٥ function pushbutton()
٦ {
٧ alert(";)"ﲢﺖ اﻹﻧﺸﺎء
٨ }
٩ </script>
١٠ </head>
١١ <body>
١٢ <center>
١٣ <h2>
١٤ <a href=" http://www.cool.com" onClick="pushbutton();">
١٥ Vist our home page </a></h2>
١٦ </center>
١٧ </body>
١٨ </html>
"ﻋﻨﺪ اﻟﺤﺪث اﻟﻀﻐﻂ اﻟﻔﺄرةhttp://www.cool.com" ﻓﻲ ﻫﺬا اﻟﻤﺜﺎل ﻋﻨﺪ اﻟﻘﯿﺎم ﺑﺎﻟﻀﻐﻂ ﻋﻠﻰ اﻻرﺗﺒﺎط
. " واﻟﺘﻲ ﺗﻘﻮم ﺑﺈﻇﻬﺎر اﻟﺮﺳﺎﻟﺔ " ﺗﺤﺖ اﻹﻧﺸﺎءpushbutton() " ﯾﺘﻢ ﺗﻨﻔﯿﺬ اﻟﺪاﻟﺔonClick() "
: اﻟﯿﻚ اﻟﺘﻨﻔﯿﺬ
٢٨
ﻣﺤﻤﺪ ﺻﺪﻳﻖ ﺣﺴﻦ
: onSubmit() ﻣﺜﺎل ﻋﻠﻰ اﻟﺤﺪث
No Statements
١ <html><head>
٢ <title>onSubmit alert message </title>
٣ <SCRIPT LANGUAGE="javascript">
٤ <!--
٥ function testform()
٦ {
٧ alert(";)"ﻧﺸﻜﺮك ﻟﺘﺴﺠﯿﻞ ﻣﻌﻨﺎ ﰲ اﳌﻮﻗﻊ
٨ }
٩ -->
١٠ </SCRIPT>
١١ </head>
١٢ <body>
١٣ <form method=post onSubmit="return testform()">
١٤ <tabel>
١٥ <tr>
١٦ <td>Name : </td>
١٧ <td><input type="text" name="name" ></td></tr>
١٨ <p><tr><td>Email :</td>
١٩ <td><input type="text" name="Email" ></td></tr>
٢٠ </tabel>
٢١ <p>
٢٢ <input type="submit" name=" "إرﺳﺎلvalue="submit">
٢٣ </form>
٢٤ </body>
٢٥ </html>
ﻓﻲ ﻫﺬا اﻟﻤﺜﺎل ﺳﻮف ﻧﻘﻮم ﺑﺈﻇﻬﺎر رﺳﺎﻟﺔ ﻟﻤﺴﺘﺨﺪم ﻋﻨﺪ اﻟﻘﯿﺎم ﺑﺎﻟﻀﻐﻂ ﻋﻠﻰ زر إرﺳﺎل ﻓﻲ اﻟـ
testform() " وذﻟﻚ ﻻﺳﺘﺪﻋﺎء اﻟﺪاﻟﺔonSubmit() " ﻟﺬﻟﻚ ﺳﻮف ﻧﺴﺘﺨﺪم اﻟﺤﺪثform
. " واﻟﺘﻲ ﺗﻘﻮم ﺑﺈﻇﻬﺎر رﺳﺎﻟﺔ ﻟﻠﻤﺴﺘﺨﺪم وﻫﻲ " ﻧﺸﻜﺮك ﻟﺘﺴﺠﯿﻞ ﻣﻌﻨﺎ ﻓﻲ اﻟﻤﻮﻗﻊ
: اﻟﯿﻚ اﻟﺘﻨﻔﯿﺬ
٢٩
ﻣﺤﻤﺪ ﺻﺪﻳﻖ ﺣﺴﻦ
ﻣﺜﺎل ﻋﻠﻰ اﻟﺤﺪﺛﯿﻦ )( onMouseOverو)(: onMouseOut
No Statements
١ ><html><head
٢ ><title>Onclick alert message</title
٣ >"<script language="javascript
٤ )(function MouseOver
٥ {
٦ ;)"alert("The mouse was over
٧ }
٨ )(function MouseOut
٩ {
١٠ ;)"alert("The mouse out of the link
١١ }
١٢ ></script
١٣ ></head
١٤ ><body
١٥ ><center
١٦ ><h2
١٧ >";)(<a href="http://www.com" onMouseOver="MouseOver
١٨ >Event win mouse over this link</a></h2
١٩ ><hr
٢٠ ><p
٢١ >";)(<a href="http:/www.com" onMouseOut="MouseOut
٢٢ >Event win mouse out of this link </a
٢٣ ></center
٢٤ ></body
٢٥ ></html
ﻓﻲ ﻫﺬا اﻟﻤﺜﺎل ﻋﻨﺪ اﻟﻘﯿﺎم ﺑﺎﻟﻤﺮور ﺑﺎﻟﻔﺄرة ﻋﻠﻰ وﺻﻠﺔ أو إرﺗﺒﺎط وﻫﻮ اﻟﺤﺪث
)( " onMouseOverﺣﯿﺚ ﺳﻮف ﻧﺴﺘﻔﯿﺪ ﻣﻦ ﻫﺬا اﻟﺤﺪث ﻓﻲ اﺳﺘﺪﻋﺎء داﻟﺔ ﻣﻜﺘﻮﺑﺔ ﺑﺎﻟﺠﺎﻓﺎ
ﺳﻜﺮﯾﺒﺖ وذﻟﻚ ﻟﻨﺘﻔﯿﺬ أي داﻟﺔ ﺗﺮﯾﺪﻫﺎ ﻓﻲ ﻫﺬا اﻟﻤﺜﺎل ﺳﻮف ﻧﻘﻮم ﺑﺈﻇﻬﺎر رﺳﺎﻟﺔ ﺗﻨﺒﻪ اﻟﻤﺘﺴﺨﺪم
ﺑﻤﺮور اﻟﻔﺄرة ﻓﻮق اﻻرﺗﺒﺎط أو اﻟﻮﺻﻠﺔ وﻓﻲ ﻣﺜﺎﻟﻨﺎ اﻟﺮﺳﺎﻟﺔ ﻫﻲ " " The mouse was over
وﻓﻲ اﻟﻮﺻﻠﺔ اﻻﺧﺮى ﻋﻨﺪ اﻟﻤﺮور وﻣﻦ ﺛﻢ اﻻﺑﺘﻌﺎد ﺑﺎﻟﻔﺄرة ﻋﻦ وﺻﻠﺔ أو ارﺗﺒﺎط وﻫﻮ اﻟﺤﺪث
)( " MouseOutﺣﯿﺚ ﺳﻮف ﻧﺴﺘﻔﯿﺪ ﻣﻦ ﻫﺬا اﻟﺤﺪث ﻓﻲ اﺳﺘﺪﻋﺎء داﻟﺔ ﻣﻜﺘﻮﺑﺔ ﺑﺎﻟﺠﺎﻓﺎ ﺳﻜﺮﯾﺒﺖ
وذﻟﻚ ﻟﻨﺘﻔﯿﺬ أي داﻟﺔ ﺗﺮﯾﺪﻫﺎ ﻓﻲ ﻫﺬا اﻟﻤﺜﺎل ﺳﻮف ﻧﻘﻮم ﺑﺈﻇﻬﺎر رﺳﺎﻟﺔ ﺗﻨﺒﻪ اﻟﻤﺘﺴﺨﺪم ﺑﻤﺮور
اﻟﻔﺄرة ﻓﻮق اﻻرﺗﺒﺎط أو اﻟﻮﺻﻠﺔ و ﻣﻦ ﺛﻢ اﻻﺑﺘﻌﺎد ﻋﻦ اﻟﻮﺻﻠﺔ أو اﻻرﺗﺒﺎط وﻓﻲ ﻣﺜﺎﻟﻨﺎ اﻟﺮﺳﺎﻟﺔ
ﻫﻲ " " The mouse was over
٣٠
٣١
ﻣﺤﻤﺪ ﺻﺪﻳﻖ ﺣﺴﻦ
: onFocus() ﻣﺜﺎل ﻋﻠﻰ اﻟﺤﺪث
No Statements
١ <html><head>
٢ <title>onFocus alert message</title>
٣ <SCRIPT LANGUAGE="javascript">
٤ </SCRIPT>
٥ <body>
٦ Enrter your name:
٧ <form>
٨ <INPUT TYPE="TEXT" NAME "YourName" onFocus = "window.status=('Enter
your name');return true;">
٩ </form>
١٠ </center>
١١ <body>
١٢ </html>
"onFocus()" ﻓﻲ ﻫﺬا اﻟﻤﺜﺎل ﻋﻨﺪ اﻟﻘﯿﺎم ﺑﻮﺿﻊ اﻟﻤﺆﺷﺮ داﺧﻞ اﻟﺤﻘﻞ وﻫﻮ اﻟﺤﺪث
. " Enrter your name " ﺗﻈﻬﺮ ﻟﻨﺎ رﺳﺎﻟﺔ ﻓﻲ أﺳﻔﻞ اﻟﻤﺴﺘﻌﺮض
: اﻟﯿﻚ اﻟﺘﻨﻔﯿﺬ
٣٢
ﻣﺤﻤﺪ ﺻﺪﻳﻖ ﺣﺴﻦ
: onChange() ﻣﺜﺎل ﻋﻠﻰ اﻟﺤﺪث
No Statements
١ <html><head>
٢ <title>onChange alert message</title>
٣ <SCRIPT LANGUAGE="javascript">
٤ </SCRIPT>
٥ <body>
٦ Enter your name:
٧ <form>
٨ <INPUT TYPE="TEXT" NAME= "YourName" onChange="window.status=('you was
change the filed');return true;">
٩ </form>
١٠ </center>
١١ <body>
١٢ </html>
"onChange() ﻓﻲ ﻫﺬا اﻟﻤﺜﺎل ﻋﻨﺪ ﺗﻐﯿﯿﺮ ﻣﻜﺎن اﻟﻤﺆﺷﺮ ﻋﻦ اﻟﺤﻘﻞ " اﻟﻘﯿﺎم ﺑﺎﻟﺤﺪث
. "you was change the filed " ﺗﻈﻬﺮ ﻟﻨﺎ رﺳﺎﻟﺔ ﻓﻲ أﺳﻔﻞ اﻟﻤﺴﺘﻌﺮض
: اﻟﯿﻚ اﻟﺘﻨﻔﯿﺬ
٣٣
ﻣﺤﻤﺪ ﺻﺪﻳﻖ ﺣﺴﻦ
: onBlur() ﻣﺜﺎل ﻋﻠﻰ اﻟﺤﺪث
No Statements
١ <html><head>
٢ <title> onBlur alert message</title>
٣ <SCRIPT LANGUAGE="javascript">
٤ </SCRIPT>
٥ <body>
٦ Enter your name:
٧ <form>
٨ <INPUT TYPE="TEXT" NAME= "YourName" onBlur = "window.status=('youe
leaf the filed empty');return true;">
٩ </form>
١٠ </center>
١١ <body>
١٢ </html>
"onBlur() ﻓﻲ ﻫﺬا اﻟﻤﺜﺎل ﻋﻨﺪ ﺗﺮك اﻟﺤﻘﻞ ﻓﺎرﻏﺎً " اﻟﻘﯿﺎم ﺑﺎﻟﺤﺪث
. "you leaf the filed empty " ﺗﻈﻬﺮ ﻟﻨﺎ رﺳﺎﻟﺔ ﻓﻲ أﺳﻔﻞ اﻟﻤﺴﺘﻌﺮض
: اﻟﯿﻚ اﻟﺘﻨﻔﯿﺬ
٣٤
ﻣﺤﻤﺪ ﺻﺪﻳﻖ ﺣﺴﻦ
ﻣﺜﺎل ﻋﻠﻰ اﻟﺤﺪﺛﯿﻦ )( onLoadو)(: onUnload
No Statements
١ ><html><head
٢ ><title>onLoad & onUnload alert message</title
٣ >"<script language="javascript
٤ )(function onloadweb
٥ {
٦ ;)"أﻫﻼ ﺑﻜﻢ ﰲ ﻣﻮﻗﻌﻨﺎ"(alert
٧ }
٨ )(function onUnloadweb
٩ {
١٠ ;)"ﻧﺸﻜﺮﻛﻢ ﻋﻠﻰ زﯾﺎرة ﻣﻮﻗﻌﻨﺎ"(alert
١١ }
١٢ ></script
١٣ ></head
١٤ >")(<body onLoad="onloadweb()" onUnload="onUnloadweb
١٥ ><h1></centerﺑﺴﻢ اﷲ اﻟﺮﲪﻦ اﻟﺮﺣﯿﻢ><center><h1
١٦ ></body
١٧ ></html
ﻓﻲ ﻫﺬا اﻟﻤﺜﺎل ﻋﻨﺪ اﻟﻘﯿﺎم ﺑﺘﺤﻤﯿﻞ اﻟﺼﻔﺤﺔ وﻫﻮ اﻟﺤﺪث " )(" onLoad
ﯾﺘﻢ ﺗﻨﻔﯿﺬ اﻟﺪاﻟﺔ )( onloadwebﻓﺘﻈﻬﺮ ﻟﻨﺎ رﺳﺎﻟﺔ " أﻫﻼ ﺑﻜﻢ ﻓﻲ ﻣﻮﻗﻌﻨﺎ " .
وﻋﻨﺪ اﻟﻘﯿﺎم ﺑﺈﻏﻼق اﻟﺼﻔﺤﺔ ) اﻟﻤﺴﺘﻌﺮض ( و ﻫﻮ اﻟﺤﺪث )(" onUnload
ﯾﺘﻢ ﺗﻨﻔﯿﺬ اﻟﺪاﻟﺔ )( onUnloadwebﻓﺘﻈﻬﺮ ﻟﻨﺎ رﺳﺎﻟﺔ " ﻧﺸﻜﺮﻛﻢ ﻋﻠﻰ زﯾﺎرة ﻣﻮﻗﻌﻨﺎ " .
٣٥
ﻣﺤﻤﺪ ﺻﺪﻳﻖ ﺣﺴﻦ
ﺑﻌﺾ اﻷﻣﺜﻠﺔ ﻣﺘﻨﻮﻋﺔ
ﻣﺜﺎل ﻋﻦ ﻛﯿﻔﯿﺔ اﻟﺘﻨﻘﻞ ﺑﯿﻦ اﻟﻌﻨﺎوﯾﻦ اﻟﻤﺨﺰﻧﺔ ﻓﻲ اﻟﻤﺘﺼﻔﺢ :
No Statements
١ ><HTML
٢ ><HEAD
٣ ><TITLE> History Buttons </TITLE
٤ >"<SCRIPT LANGUAGE="JavaScript
٥ };)function nav(X){ history.go(X
٦ ></SCRIPT
٧ ></<HEAD
٨ ><BODY
٩ ><CENTER><h1>Histoy Buttons</h1
<h2> Here are the tow buttons made with navigator form buttons:
١٠ ></h2><P
١١ ><FORM
١٢ >")" onClick="nav(-1اﻟﺼﻔﺤﺔ اﻟﺴﺎﺑﻘﺔ"=<INPUT TYPE="button" VALUE
١٣ >")" onClick="nav(1اﻟﺼﻔﺤﺔ اﻟﺘﺎﻟﯿﺔ"=<INPUT TYPE="button" VALUE
١٤ ></FORM
١٥ ></CENTER
١٦ ></BODY
١٧ ></HTML
ﻓﻲ ﻫﺬا اﻟﻤﺜﺎل ﻗﻤﻨﺎ ﺑﻌﺮض ﻃﺮﯾﻘﺘﯿﻦ ﻟﺘﻨﻘﻞ ﺑﯿﻦ اﻟﻌﻨﺎوﯾﻦ اﻟﻤﺨﺰﻧﺔ ﻓﻲ اﻟﻤﺘﺼﻔﺢ ﺣﯿﺚ ﺳﻮف
ﻧﺴﺘﻔﯿﺪ ﻣﻦ اﻟﻜﺎﺋﻦ historyواﯾﻀﺎ اﻟﺪاﻟﺔ ) ( goﺣﯿﺚ ﯾﺘﻢ ﺗﻤﺮﯾﺮ ﻗﯿﻤﺔ ١-إذا أردﻧﺎ اﻟﺮﺟﻮع
ﺻﻔﺤﺔ إﻟﻰ اﻟﺨﻠﻒ أو اﻟﻘﯿﻤﺔ ١إذا أردﻧﺎ اﻻﻧﺘﻘﺎل اﻟﺼﻔﺤﺔ اﻟﺘﺎﻟﯿﺔ .وﻓﻲ ﻣﺜﺎﻟﻨﺎ ﻋﻨﺪاﻟﺤﺪث اﻟﻀﻐﻂ
ﻋﻠﻰ زر " اﻟﺼﻔﺤﺔ اﻟﺴﺎﺑﻘﺔ " ﯾﺘﻢ ﺗﻨﻔﯿﺬ اﻟﺪاﻟﺔ ) nav( 1-ﺣﯿﺚ ﯾﺘﻢ اﻻﻧﺘﻘﺎل إﻟﻰ اﻟﺼﻔﺤﺔ اﻟﻮﯾﺐ
اﻟﺴﺎﺑﻘﺔ.و اﯾﻀﺎ ﻋﻨﺪاﻟﺤﺪث اﻟﻀﻐﻂ ﻋﻠﻰ زر " اﻟﺼﻔﺤﺔ اﻟﺘﺎﻟﯿﺔ " ﯾﺘﻢ ﺗﻨﻔﯿﺬ اﻟﺪاﻟﺔ ) nav( 1
ﺣﯿﺚ ﯾﺘﻢ اﻻﻧﺘﻘﺎل إﻟﻰ اﻟﺼﻔﺤﺔ اﻟﻮﯾﺐ اﻟﺘﺎﻟﯿﺔ .
اﻟﯿﻚ اﻟﺘﻨﻔﯿﺬ :
٣٦
ﻣﺤﻤﺪ ﺻﺪﻳﻖ ﺣﺴﻦ
ﻣﺜﺎل ﻋﻦ ﻛﯿﻔﯿﺔ إﻧﺸﺎء زر ﻹرﺳﺎل ﺑﺮﯾﺪ إﻟﻜﺘﺮوﻧﻲ :
No Statements
١ ><HTML
٢ ><HEAD
٣ ><title> Email button</title
٤ ></HEAD
٥ ><BODY
٦ ><FROM
"<INPUT TYPE="button" VALUE="send e-mail
٧ >";'onClick="self.location='mailto:mymail@any_compeny.com
٨ ></FORM
٩ ></BODY
١٠ ></HTML
ﻋﻨﺪ اﻟﺤﺪث onClickﺳﻮف ﯾﺘﻢ ﺗﻨﻔﯿﺬ اﻟﺒﺮﻧﺎﻣﺞ self.locationوﻫﺬا اﻷﻣﺮ ﯾﻘﻮم ﺑﺈرﺳﺎل
اﻟﻤﺴﺘﺨﺪم إﻟﻰ ﺑﺮﻧﺎﻣﺞ اﻟﺒﺮﯾﺪ اﻻﻟﻜﺘﺮوﻧﻲ اﻻﻓﺘﺮاﺿﻲ اﻟﻤﻮﺟﻮد ﻋﻠﻰ اﻟﻜﻤﺒﯿﻮﺗﺮ ،واﻟﻌﻨﻮان ﻓﻲ
ﺣﻘﻞ " إرﺳﺎل إﻟﻰ " وﻓﻲ ﻣﺜﺎﻟﻨﺎ ﯾﺘﻢ ﻓﻲ ﻫﺬا اﻟﺤﻘﻞ ﻛﺘﺎﺑﺔ . mymail@any_compeny.com
إﻟﯿﻚ اﻟﺘﻨﻔﯿﺬ:
٣٧
ﺣﯿﺚbrowsertest() ﯾﺘﻢ ﺗﻨﻔﯿﺬ اﻟﺪاﻟﺔonload ﻓﻲ ﻫﺬا اﻟﻤﺜﺎل ﻋﻨﺪ ﺗﺤﻤﯿﻞ اﻟﺼﻔﺤﺔ أي اﻟﺤﺪث
واﻟﺨﺎﺻﯿﺔ، navigator ﺗﻘﻮم ﻫﺬه اﻟﺪاﻟﺔ ﺑﻔﺤﺺ واﺧﺘﺒﺎر اﻟﻤﺘﺼﻔﺢ وذﻟﻚ ﻋﻦ ﻃﺮﯾﻖ اﻟﻜﺎﺋﻦ
appName
: ﺣﯿﺚappCodeName وappVersion و
ﺳﻮف ﺗﻘﻮم ﺑﺈرﺟﺎع اﺳﻢ اﻟﻤﺘﺼﻔﺢnavigator.appName ﻋﻨﺪ ﻛﺘﺎﺑﺔ اﻟﺠﻤﻠﺔ
ﺳﻮف ﺗﻘﻮم ﺑﺈرﺟﺎع إﺻﺪار اﻟﻤﺘﺼﻔﺢnavigator.appVersion وﻋﻨﺪ ﻛﺘﺎﺑﺔ اﻟﺠﻤﻠﺔ
. ﺳﻮف ﺗﻘﻮم ﺑﺈرﺟﺎع اﻻﺳﻢ اﻟﺒﺮ ﻣﺠﻲnavigator.appCodeName وﻋﻨﺪ ﻛﺘﺎﺑﺔ اﻟﺠﻤﻠﺔ
: اﻟﯿﻚ اﻟﺘﻨﻔﯿﺬ
٣٨
ﻣﺤﻤﺪ ﺻﺪﻳﻖ ﺣﺴﻦ