اﻟﺪرس اﻟﺘﺎﻟﻲ««« ﺧﺮاﺋﻂ اﻟﺼﻮر ﺳﯿﺨﺼﺺ ﻫﺬا اﻟﺪرس ﻟﻤﻨﺎﻗﺸﺔ واﺣﺪًا ﻣﻦ اﻟﻤﻮاﺿﯿﻊ اﻟﻤﺘﻘﺪﻣﺔ ﻧﻮﻋًﺎ ﻣﺎ واﻟﻤﻤﺘﻌﺔ ﻓﻲ ﻟﻐﺔ HTMLأﻻ وﻫﻮ ﻣﻮﺿﻮع ﺧﺮاﺋﻂ اﻟﺼﻮر. ﻓﻬﺮس اﻟﺼﻔﺤﺔ ] اﻟﺸﺮح | اﻟﺒﺪاﯾﻪ | ﺷﻔﺮة اﻟﺨﺮﯾﻄﺔ | اﻟﺨﺼﺎﺋﺺ | اﻟﻨﻬﺎﯾﺔ | ﻫﺎم ﺟﺪا | ﻣﺴﻚ اﻟﺨﺘﺎم [ أﻧﺖ ﺗﻌﺮف ﺑﻼ ﺷﻚ ﻣﻦ ﺧﻼل دراﺳﺘﻚ ﻟﻠﻮﺻﻼت اﻟﺘﺸﻌﺒﯿﺔ ،أﻧﻨﺎ ﻧﺴﺘﻄﯿﻊ إدراج أي ﺻﻮرة ﻧﺮﯾﺪﻫﺎ ﻟﺘﻤﺜﻞ وﺻﻠﺔ ﺗﺸﻌﺒﯿﺔ ﻣﺎ .ﻟﻜﻦ ﻣﺎ رأﯾﻚ ﺑﺼﻮرة واﺣﺪة ﺗﺤﺘﻮي ﻋﻠﻰ اﻟﻌﺪﯾﺪ ﻣﻦ ﻫﺬه اﻟﻮﺻﻼت اﻟﺘﻲ ﺗﻘﻮم ﺑﺈﯾﺼﺎﻟﻨﺎ إﻟﻰ ﻣﻮاﻗﻊ ﻣﺨﺘﻠﻔﺔ!!؟ ﻫﺬا ﻫﻮ ﺑﺒﺴﺎﻃﺔ ﻣﺒﺪأ اﻟﺨﺮاﺋﻂ اﻟﺼﻮرﯾﺔ .ﻣﻦ اﻟﻤﺤﺘﻤﻞ أن ﺗﻜﻮن ﻻ ﺗﻌﺮﻓﻬﺎ وأن ﯾﻜﻮن ﻫﺬا اﻟﻤﻮﺿﻮع ﺟﺪﯾﺪاً ﻋﻠﯿﻚ ،ﻟﻜﻦ ﻣﻦ اﻟﻤﺆﻛﺪ أﻧﻚ اﺳﺘﺨﺪﻣﺘﻬﺎ ﻣﻦ ﻗﺒﻞ .ﻓﻲ اﻟﺒﺪاﯾﻪ ﺑﻤﺎ أﻧﻨﺎ ﻧﺘﺤﺪث ﻋﻦ ﺧﺮاﺋﻂ اﻟﺼﻮر ﺳﻮف ﻧﻌﻮد أﯾﻀﺎً ﻟﻠﺘﻌﺎﻣﻞ ﻣﻊ وﺳﻮم اﻟﺼﻮر ﻛﺬﻟﻚ ﺳﻨﺘﻌﺎﻣﻞ ﻣﻊ اﻟﻮﺻﻼت اﻟﺘﺸﻌﺒﯿﺔ )ﻛﻮن اﻟﺨﺮاﺋﻂ اﻟﺼﻮرﯾﺔ ﻫﻲ ﺗﻄﺒﯿﻖ آﺧﺮﻟﻠﻮﺻﻼت( ..وﺳﺘﺤﺘﺎج أﯾﻀًﺎ إﻟﻰ اﻟﻘﻠﯿﻞ ﻣﻦ اﻟﻬﻨﺪﺳﺔ )ﻧﻌﻢ ..اﻟﻬﻨﺪﺳﺔ .ذﻟﻚ اﻟﻌﻠﻢ اﻟﺬي ﯾﺠﺒﺮك اﻟﻤﻌﻠﻢ ﻓﯿﻪ ﻋﻠﻰ ﺣﻤﻞ اﻟﺒﯿﻜﺎر ﻟﺘﺮﺳﻢ ﺑﻪ داﺋﺮة ..ﻓﺘﻜﻮن اﻟﻨﺘﯿﺠﺔ ﺷﻜ ًﻼ ﻋﺠﺎﺋﺒﯿﺎً ﻗﺪ ﯾﻜﻮن أي ﺷﻲء ..إﻻ أن ﯾﻜﻮن داﺋﺮة( .وأﺧﯿﺮاً ﻧﺤﺘﺎج إﻟﻰ أﺣﺪ ﺑﺮاﻣﺞ ﺗﺤﺮﯾﺮ اﻟﺼﻮر ﻣﺜﻞ « Paint Shop Proﻟﻤﺴﺎﻋﺪﺗﻨﺎ ﻓﻲ ﻣﻌﺮﻓﺔ ﺑﻌﺾ اﻟﺘﻔﺎﺻﯿﻞ اﻟﺨﺎﺻﺔ ﺑﺎﻟﺼﻮر. ﻓﺎﻟﻨﺒﺪأ اﻵن ﻫﺬه ﻫﻲ ﺧﺮﯾﻄﺘﻨﺎ أو ﺑﺎﻷﺣﺮى ﻣﺎ ﺳﻮف ﺗﺼﺒﺢ ﺑﻌﺪ ﻗﻠﯿﻞ ﺧﺮﯾﻄﺘﻨﺎ ..ﻣﺠﺮد ﺻﻮرة ﻋﺎدﯾﺔ ﺳﻨﻘﻮم ﺑﺈدراﺟﻬﺎ ﻓﻲ اﻟﺼﻔﺤﺔ.
وﻫﺬه ﻫﻲ اﻟﺸﯿﻔﺮة اﻟﺨﺎﺻﺔ ﺑﺈدراﺟﻬﺎ>\"<IMG SRC=\"flowers.jpg\" WIDTH=\"320\" HEIGHT=\"310\" BORDER=\"0 واﻵن ﺳﻮف ﻧﻀﯿﻒ ﻟﻬﺬه اﻟﺸﯿﻔﺮة ﺧﺎﺻﯿﺔ ﺟﺪﯾﺪة ﻣﻦ ﺧﺼﺎﺋﺺ اﻟﻮﺳﻢ > <IMGﻫﻲ\"USEMAP=\"#map_name واﻟﺘﻲ ﺗﺨﺒﺮ اﻟﻤﺘﺼﻔﺢ أن ﯾﺴﺘﺨﺪم ﻫﺬه اﻟﺼﻮرة ﻛﺨﺮﯾﻄﺔ وذﻟﻚ ﺣﺴﺐ اﻟﺘﺤﺪﯾﺪات اﻟﻤﻮﺟﻮدة ﻓﻲ ﺗﻌﺮﯾﻒ ﻫﺬه اﻟﺨﺮﯾﻄﺔ )وﺳﻨﺘﺤﺪث ﻋﻦ ﻫﺬه اﻟﺘﺤﺪﯾﺪات ﻻﺣﻘﺎً إن ﺷﺎء اﷲ( .أﻣﺎ اﻟﻘﯿﻤﺔ map_nameﻓﻬﻲ ﺗﻤﺜﻞ اﻻﺳﻢ اﻟﺬي ﻧﺮﯾﺪ أن ﻧﻌﯿّﻨﻪ ﻟﻠﺨﺮﯾﻄﺔ )أي اﺳﻢ ﻧﺮﯾﺪه ).وﻛﻤﺎ ﺗﺮى ﻓﺈن ﻫﺬا اﻻﺳﻢ ﻣﺴﺒﻮق ﺑﺈﺷﺎرة #. ﻣﺎ رأﯾﻚ أن ﻧﺴﻤﻲ اﻟﺨﺮﯾﻄﺔ ﺑﺎﺳﻢ ourmap.ﻋﻨﺪﻫﺎ ﺳﻮف ﺗﺼﺒﺢ اﻟﺸﯿﻔﺮة ﻛﻤﺎ ﯾﻠﻲ :\"<IMG SRC=\"flowers.jpg\" WIDTH=\"320\" HEIGHT=\"310\" BORDER=\"0>\"USEMAP=\"#ourmap وﻛﺎﻧﺖ ﻫﺬه ﻫﻲ اﻟﺨﻄﻮة اﻷوﻟﻰ ﻓﻲ ﺗﻌﺮﯾﻒ اﻟﺨﺮﯾﻄﺔ .واﻟﺨﻄﻮة اﻟﺜﺎﻧﯿﺔ ﻫﻲ ﺗﺤﺪﯾﺪ اﻟﺘﻔﺎﺻﯿﻞ ﻟﻨﻘﻢ ﺑﺈﺧﺒﺎر اﻟﻤﺘﺼﻔﺢ أﻧﻨﺎ ﻧﺮﯾﺪ ﺧﺮﯾﻄﺔ ﺗﺤﻤﻞ اﻹﺳﻢ ourmap>\"<MAP NAME=\"ourmap...></MAP وﻻﺣﻆ أﻧﻨﺎ ﻻ ﻧﺴﺘﺨﺪم إﺷﺎرة #ﻣﻊ اﻟﺘﺴﻤﯿﺔ ﻫﻨﺎ ﺑﻌﺪ ذﻟﻚ ﻧﺤﺘﺎج أن ﻧﺤﺪد اﻟﻤﻨﺎﻃﻖ اﻟﺴﺎﺧﻨﺔ ﻟﻠﻮﺻﻼت اﻟﺘﺸﻌﺒﯿﺔ ،وﻟﻨﻔﺘﺮض أﻧﻨﺎ ﻧﺮﯾﺪﻫﺎ ﺑﺎﻟﺸﻜﻞ اﻟﺘﺎﻟﻲ:
وﻫﻨﺎ أرﯾﺪ أن أؤﻛﺪ ﻋﻠﯿﻚ وﺑﺼﻮرة ﻣﺸﺪدة أن رﺳﻢ ﻫﺬه اﻷﺷﻜﺎل اﻟﻬﻨﺪﺳﯿﺔ ﻫﻮ ﻓﻘﻂ ﺑﻐﺮض ﺗﻮﺿﯿﺢ ﻣﺒﺪأ اﻟﻤﻨﺎﻃﻖ اﻟﺴﺎﺧﻨﺔ ﻟﻚ ،وﺗﺤﺪﯾﺪ ﺷﻜﻞ وﻣﻮﻗﻊ ﻛﻞ ﻣﻨﻄﻘﺔ .وﻻ ﻧﺤﺘﺎج ﻟﻬﺎ أﺑﺪاً ﻋﻨﺪﻣﺎ ﻧﺮﯾﺪ إﻧﺸﺎء ﺧﺮﯾﻄﺔ ﺻﻮرﯾﺔ ﻛﺬﻟﻚ ﻓﻘﺪ ﻗﻤﺖ ﺑﺎﺧﺘﯿﺎرﻫﺎ ورﺳﻤﻬﺎ ﺑﺼﻮرة ﻋﺸﻮاﺋﯿﺔ ،ﺑﻤﻌﻨﻰ أﻧﻚ ﺗﺴﺘﻄﯿﻊ إﺧﺘﯿﺎر أي ﻣﻨﺎﻃﻖ أﺧﺮى ﻣﻐﺎﯾﺮة ﻛﻤﺎ ﺗﺴﺘﻄﯿﻊ إﺧﺘﯿﺎر أي أﺷﻜﺎل ﺗﺮﯾﺪﻫﺎ .وذﻟﻚ ﺑﺎﻟﻄﺒﻊ وﻓﻘﺎً ﻟﺮﻏﺒﺘﻚ ﻛﻤﺼﻤﻢ ﺻﻔﺤﺎت وﯾﺐ . واﻟﺴﺆال اﻵن ﻫﻮ ،ﻛﯿﻒ ﻧﺤﺪد ﻫﺬه اﻟﻤﻨﺎﻃﻖ ﺑﺎﺳﺘﺨﺪام HTMLوﻛﯿﻒ ﯾﻤﻜﻦ ﻟﻠﻤﺘﺼﻔﺢ أن ﯾﻤﯿﺰﻫﺎ دون ﻏﯿﺮﻫﺎ؟ واﻟﺠﻮاب ﻫﻮ اﺳﺘﺨﺪام اﻟﻮﺳﻢ > <AREAواﻟﺬي ﯾﺪرج ﺿﻤﻦ اﻟﻮﺳﻢ اﻟﺴﺎﺑﻖ وﺑﻨﻔﺲ ﻋﺪد اﻟﻤﻨﺎﻃﻖ اﻟﺴﺎﺧﻨﺔ اﻟﺘﻲ ﻧﺮﯾﺪﻫﺎ ﻓﻬﻨﺎ ﻓﻲ ﻫﺬا اﻟﻤﺜﺎل ﻧﺮﯾﺪ أرﺑﻊ ﻣﻨﺎﻃﻖ.>\"<MAP NAME=\"ourmap><AREA><AREA><AREA><AREA></MAP وﻣﻊ ذﻟﻚ ﻓﻬﺬا ﻟﯿﺲ ﻛﻞ ﺷﻲء ﻷﻧﻨﺎ ﻧﺤﺘﺎج أوﻻً ﻟﺘﺤﺪﯾﺪ ﺷﻜﻞ ﻛﻞ ﻣﻨﻄﻘﺔ وﻧﺴﺘﺨﺪم ﻟﻬﺬا اﻟﻐﺮض اﻟﺨﺎﺻﯿﺔ SHAPE وﻣﻦ ﺛﻢ ﻧﺤﺘﺎج ﻟﺘﺤﺪﯾﺪ ﻣﻮﻗﻊ ﻛﻞ ﻣﻨﻄﻘﺔ وﻫﺬا ﯾﺘﻢ ﺑﺎﻟﺨﺎﺻﯿﺔ COORDSوأﺧﯿﺮًا ﺑﻤﺎ أن ﻛﻞ ﻣﻨﻄﻘﺔ ﺗﻤﺜﻞ وﺻﻠﺔﺗﺸﻌﺒﯿﺔ وﺗﺸﯿﺮ إﻟﻰ ﻋﻨﻮان ﻣﻮﻗﻊ ﻣﺎ ﻓﻤﻦ اﻟﺒﺪﯾﻬﻲ أن ﻧﺴﺘﺨﺪم ﺧﺎﺻﯿﺔ ﺗﺤﺪﯾﺪ اﻟﻤﻮاﻗﻊ وﻫﻲ HREFواﻟﺘﻲ ﻣﺮت ﻣﻌﻨﺎ ﻓﻲ درس اﻟﻮﺻﻼت اﻷﺳﺎﺳﯿﻪ إﻟﻰ اﻟﺘﻔﺎﺻﯿﻞ ... ﺗﺄﺧﺬ اﻟﺨﺎﺻﯿﺔ SHAPEﺛﻼﺛﺔ ﻗﯿﻢ ﻟﺘﺤﺪﯾﺪ ﺷﻜﻞ اﻟﻤﻨﻄﻘﺔ اﻟﺴﺎﺧﻨﺔ وﻫﻲ: RECTﻟﻸﺷﻜﺎل اﻟﻤﺮﺑﻌﺔ واﻟﻤﺴﺘﻄﯿﻠﺔ اﻟﻤﻨﺘﻈﻤﺔ • CIRCLEﻟﻠﺪواﺋﺮ • • POLYﻟﻸﺷﻜﺎل اﻟﻌﺸﻮاﺋﯿﺔ واﻟﻤﻀﻠﻌﺔوﻟﺪﯾﻨﺎ داﺋﺮة وﻣﺴﺘﻄﯿﻞ وﺷﻜﻠﯿﻦ ﻋﺸﻮاﺋﯿﯿﻦ ،إذن ﺗﺼﺒﺢ اﻟﺸﯿﻔﺮة ﻛﻤﺎ ﯾﻠﻲ( دون أﻫﻤﯿﺔ ﻟﺘﺮﺗﯿﺒﻬﺎ):
>\"<MAP NAME=\"ourmap>\"<AREA SHAPE=\"poly>\"<AREA SHAPE=\"rect>\"<AREA SHAPE=\"circle>\"<AREA SHAPE=\"poly></MAP ﻧﺄﺗﻲ اﻵن إﻟﻰ ﺗﺤﺪﯾﺪ ﻣﻮﻗﻊ ﻛﻞ ﺷﻜﻞ ﻣﻦ اﻟﺨﺮﯾﻄﺔ ،واﻟﺬي ﯾﺘﻢ ﺑﺎﺳﺘﺨﺪام اﻟﺨﺎﺻﯿﺔ COORDS.ﺗﺄﺧﺬ ﻫﺬه اﻟﺨﺎﺻﯿﺔ ﻗﯿﻤًﺎ رﻗﻤﯿﺔ ﺗﻤﺜﻞ إﺣﺪاﺛﯿﺎت اﻟﺸﻜﻞ اﻟﻬﻨﺪﺳﻲ ﺑﺎﻟﺒﯿﻜﺴﻞ ﻋﻠﻰ اﻟﺨﺮﯾﻄﺔ )أﻟﻢ أﻗﻞ ﻟﻚ أﻧﻚ ﺳﺘﺤﺘﺎج إﻟﻰ اﻟﻘﻠﯿﻞ ﻣﻦاﻟﻬﻨﺪﺳﺔ( وﻣﻦ اﻟﺒﺪﯾﻬﻲ أن ﺗﺨﺘﻠﻒ دﻻﻟﺔ ﻛﻞ ﻗﯿﻤﺔ ﺑﺈﺧﺘﻼف اﻟﺸﻜﻞ اﻟﻤﻘﺼﻮد .أﻧﻈﺮ إﻟﻰ اﻷﺷﻜﺎل اﻟﺘﻮﺿﯿﺤﯿﺔ اﻟﺘﺎﻟﯿﺔ : ﻓﻲ اﻟﺸﻜﻞ اﻟﺮﺑﺎﻋﻲ اﻟﻤﻨﺘﻈﻢ ﻧﺤﺘﺎج ﻟﻤﻌﺮﻓﺔ إﺣﺪاﺛﯿﻲ اﻟﺰاوﯾﺔ اﻟﯿﺴﺮى اﻟﻌﻠﯿﺎ وإﺣﺪاﺛﯿﻲ اﻟﺰاوﯾﺔ اﻟﯿﻤﻨﻰ اﻟﺴﻔﻠﻰ. )أرﺑﻌﺔ أرﻗﺎم( أﻣﺎ ﻓﻲ اﻟﺪاﺋﺮة ﻓﻜﻞ ﻣﺎ ﻧﺤﺘﺎﺟﻪ ﻫﻮ إﺣﺪاﺛﯿﻲ ﻧﻘﻄﺔ اﻟﻤﺮﻛﺰ ﻟﻬﺬه اﻟﺪاﺋﺮة ﺑﺎﻹﺿﺎﻓﺔ إﻟﻰ ﻣﻌﺮﻓﺔ ﻧﺼﻒ ﻗﻄﺮﻫﺎ) .ﺛﻼﺛﺔ أرﻗﺎم ﻓﻘﻂ( وأﺧﯿﺮاً ﻓﻲ اﻷﺷﻜﺎل اﻟﻤﻀﻠﻌﺔ اﻟﻌﺸﻮاﺋﯿﺔ ﻧﺤﺘﺎج ﻟﻤﻌﺮﻓﺔ إﺣﺪاﺛﯿﻲ ﻛﻞ ﻧﻘﻄﺔ ﻣﻦ اﻟﻨﻘﺎط اﻟﺘﻲ ﺗﻤﺜﻞ زواﯾﺎ ﻫﺬا اﻟﺸﻜﻞ ﻣﻬﻤﺎ ﻛﺎن ﻋﺪدﻫﺎ) .ﻋﺪد اﻷرﻗﺎم ﻏﯿﺮ ﻣﺤﺪد وﯾﺨﺘﻠﻒ ﺑﺈﺧﺘﻼف اﻟﺸﻜﻞ اﻟﻤﻘﺼﻮد(
وﻗﺪ ﺗﺴﺄل اﻵن ،ﻛﯿﻒ ﻧﺴﺘﻄﯿﻊ إﯾﺠﺎد ﻫﺬه اﻹﺣﺪاﺛﯿﺎت؟ ﻣﺎ ﻣﻦ ﻣﺸﻜﻠﺔ !ﻫﻨﺎ ﯾﺄﺗﻲ دور ﺑﺮﻧﺎﻣﺞ اﻟﺠﺮاﻓﯿﻜﺲ ،ﻓﻜﻞ ﻣﺎ ﻋﻠﯿﻚ ﻫﻮ ﺗﺤﻤﯿﻞ اﻟﺼﻮر ﻓﻲ ﻫﺬا اﻟﺒﺮﻧﺎﻣﺞ ﺛﻢ وﺿﻊ اﻟﻤﺆﺷﺮ ﻓﻲ اﻟﻤﻜﺎن اﻟﻤﻄﻠﻮب وﺳﻮف ﺗﺸﺎﻫﺪ إﺣﺪاﺛﯿﺎت اﻟﻨﻘﻄﺔ اﻟﺘﻲ ﯾﻘﻊ ﻋﻠﯿﻬﺎ اﻟﻤﺆﺷﺮ ﻋﻠﻰ اﻟﺸﺮﯾﻂ اﻟﻤﻮﺟﻮد أﺳﻔﻞ ﻧﺎﻓﺬة اﻟﺒﺮﻧﺎﻣﺞ .وﺑﺎﻹﺿﺎﻓﺔ ﻟﺬﻟﻚ ﺗﺴﺘﻄﯿﻊ ﻣﻌﺮﻓﺔ أﺑﻌﺎد اﻟﺼﻮرة ﻛﻜﻞ .وﻋﻠﻰ أﯾﺔ ﺣﺎل ﻛﻞ ﻣﺎ ﻋﻠﯿﻚ ﻓﻌﻠﻪ ﻫﻮ ﺗﺴﺠﯿﻞ إﺣﺪاﺛﯿﺎت ﺟﻤﯿﻊ اﻟﻨﻘﺎط اﻟﻤﻄﻠﻮﺑﺔ ﻣﻦ أﺟﻞ اﺳﺘﺨﺪاﻣﻬﺎ ﻓﻲ ﺗﻌﺮﯾﻒ اﻟﺨﺮﯾﻄﺔ . وﻟﻨﻌﺪ اﻵن إﻟﻰ ﺧﺮﯾﻄﺘﻨﺎ: ﺑﺎﻟﻨﺴﺒﺔ ﻟﻠﺸﻜﻞ اﻟﻤﺴﺘﻄﯿﻞ ﻛﺎﻧﺖ إﺣﺪاﺛﯿﺎت اﻟﻨﻘﻄﺔ اﻟﻌﻠﯿﺎ ﻫﻲ (٢٨،٢٥٥):وإﺣﺪاﺛﯿﺎت اﻟﻨﻘﻄﺔ اﻟﺴﻔﻠﻰ ﻫﻲ )). ٣١٠،٣٠٠ أﻣﺎ اﻟﺪاﺋﺮة ﻓﻜﺎﻧﺖ إﺣﺪاﺛﯿﺎت ﻧﻘﻄﺔ ﻣﺮﻛﺰﻫﺎ ﻫﻲ ) (١٤٥،١٦٤وﻧﺼﻒ ﻗﻄﺮﻫﺎ ٨٤ﺑﯿﻜﺴﻞ . أﻣﺎ اﻟﺸﻜﻞ اﻟﻤﻀﻠﻊ اﻷﯾﻤﻦ )اﻟﻤﺜﻠﺚ( ﻓﺄن إﺣﺪاﺛﯿﺎت زواﯾﺎه ﻫﻲ )), (315,230) ٣٠٠،٢٠) ،(١٥٠،١٠وﺗﺬﻛﺮ ﻫﻨﺎ أن ﻻ أﻫﻤﯿﺔ ﻟﻠﺘﺮﺗﯿﺐ ﻓﻲ ذﻛﺮ ﻫﺬه اﻟﻨﻘﺎط .اﻟﻤﻬﻢ ﻓﻘﻂ أن ﺗﻜﻮن اﻹﺣﺪاﺛﯿﺎت دﻗﯿﻘﺔ إﻟﻰ ﺣﺪ ﻣﺎ . وأﺧﯿﺮًا ﻓﺈن إﺣﺪاﺛﯿﺎت اﻟﻨﻘﺎط ﻓﻲ اﻟﺸﻜﻞ اﻟﻤﻀﻠﻊ اﻷﯾﺴﺮ )اﻟﺮﺑﺎﻋﻲ( ﻫﻲ،(١١٠،٦٥) ،(١٣٠،١٠) ،(١٠،١٠) : )) ١٠،١٤٠ ﻟﻨﻘﻢ اﻵن ﺑﻜﺘﺎﺑﺔ ﻫﺬه اﻟﺒﯿﺎﻧﺎت ﺿﻤﻦ اﻟﺸﯿﻔﺮة اﻟﺴﺎﺑﻘﺔ واﻟﺘﻲ ﺳﺘﺼﺒﺢ ﻛﻤﺎ ﯾﻠﻲ:>\"<MAP NAME=\"ourmap>\"<AREA SHAPE=\"poly\" COORDS=\"10,10,130,10,110,65,10,140>\"<AREA SHAPE=\"rect\" COORDS=\"28,255,310,300>\"<AREA SHAPE=\"circle\" COORDS=\"145,164,84>\"<AREA SHAPE=\"poly\" COORDS=\"150,10,300,20,315,230></MAP ﻣﺎذا ﺑﻘﻲ اﻵن؟ ﺑﻘﻲ ﺗﻌﯿﯿﻦ اﻟﻌﻨﺎوﯾﻦ اﻟﺘﻲ ﺳﺘﺸﯿﺮ إﻟﯿﻬﺎ اﻟﻮﺻﻼت اﻟﺘﺸﻌﺒﯿﺔ واﻟﺘﻲ ﺳﻨﺴﺘﺨﺪم ﻟﻬﺎ اﻟﺨﺎﺻﯿﺔ HREF. إﻟﯿﻚ ﻋﻨﺎوﯾﻦ أرﺑﻌﺔ ﻣﻦ اﻟﻤﻮاﻗﻊ اﻟﻌﺮﺑﯿﺔ اﻟﻤﻤﺘﺎزة>\"<MAP NAME=\"ourmap\"<AREA SHAPE=\"poly\" COORDS=\"10,10,130,10,110,65,10,140>\"HREF=\"http://asdh4.dk3.com\"<AREA SHAPE=\"rect\" COORDS=\"28,255,310,300>\"HREF=\"http://www.ayna.com\"<AREA SHAPE=\"circle\" COORDS=\"145,164,84>\"HREF=\"http://www.pcmag-arabic.com\"<AREA SHAPE=\"poly\" COORDS=\"150,10,300,20,315,230>\"HREF=\"http://www.ahram.org.eg></MAP وأﺧﯿﺮاً ﺑﻌﺪ ﺗﺠﻤﯿﻊ اﻟﺸﯿﻔﺮة اﻟﺨﺎﺻﺔ ﺑﺈدراج اﻟﺼﻮرة ﻣﻊ ﻫﺬه اﻟﺸﯿﻔﺮة ﺑﺎﻟﺸﻜﻞ اﻟﺘﺎﻟﻲ) .وﺑﺎﻟﻤﻨﺎﺳﺒﺔ ﻓﻘﺪ ﻗﻤﺖﺑﺎﻟﺘﺠﻤﯿﻊ ﻣﻦ أﺟﻞ ﺗﻮﺿﯿﺢ اﻟﻨﺘﯿﺠﺔ اﻟﻨﻬﺎﺋﯿﺔ ﻟﺸﯿﻔﺮة اﻟﺨﺮﯾﻄﺔ ﻛﻜﻞ .وﻓﻲ اﻟﻮاﻗﻊ أﻧﻨﺎ ﻧﺴﺘﻄﯿﻊ وﺿﻊ ﺗﻌﺮﯾﻒ اﻟﺨﺮﯾﻄﺔ ﻓﻲ أي ﻣﻜﺎن ﻧﺮﯾﺪه داﺧﻞ اﻟﻤﻠﻒ وﻟﯿﺲ ﺷﺮﻃﺎً أن ﯾﻜﻮن ﻗﺮﯾﺒﺎً ﻣﻦ ﺷﯿﻔﺮة إدراج اﻟﺼﻮرة )
\"<IMG SRC=\"flowers.jpg\" WIDTH=\"320\" HEIGHT=\"310\" BORDER=\"0>\"USEMAP=\"#ourmap>\"<MAP NAME=\"ourmap\"<AREA SHAPE=\"poly\" COORDS=\"10,10,130,10,110,65,10,140>\"HREF=\"http://asdh4.dk3.com\"<AREA SHAPE=\"rect\" COORDS=\"28,255,310,300>\"HREF=\"http://www.ayna.com\"<AREA SHAPE=\"circle\" COORDS=\"145,164,84>\"HREF=\"http://www.pcmag-arabic.com\"<AREA SHAPE=\"poly\" COORDS=\"150,10,300,20,315,230>\"HREF=\"http://www.ahram.org.eg></MAP ﺳﻮف ﻧﺤﺼﻞ ﻋﻠﻰ اﻟﻨﺘﯿﺠﺔ اﻟﺘﺎﻟﯿﺔ وﺣﺎول أن ﺗﺠﺮﺑﻬﺎ : ﺷﻜﺮ ﺧﺎص ﻟﻲ http://www.khayma.com/hpinarabic واﻵن أرﯾﺪ أن أﺛﯿﺮ ﻣﺴﺄﻟﺘﯿﻦ ﻣﻬﻤﺘﯿﻦ ﻓﻲ ﻫﺬا اﻟﺴﯿﺎق: اﻷوﻟﻰ :ﻣﺎذا ﻟﻮ أردﻧﺎ إدراج ﻫﺬه اﻟﺨﺮﯾﻄﺔ أﻛﺜﺮ ﻣﻦ ﻣﺮة ﻓﻲ اﻟﺼﻔﺤﺔ ،ﻓﻬﻞ ﻧﺤﺘﺎج إﻟﻰ ﺗﻜﺮار ﻛﺘﺎﺑﺔ اﻟﺸﯿﻔﺮة ><MAP> ... </MAPﻣﻊ ﻛﻞ ﻣﺮة ﻧﺪرج ﻓﯿﻬﺎ اﻟﺼﻮرة؟ اﻟﺠﻮاب ﻗﻄﻌﺎً ﻻ!!. ﻓﻄﺎﻟﻤﺎ أﻧﻨﺎ ﻧﻜﺘﺐ اﻟﺨﺎﺻﯿﺔ USEMAPﻓﺈن اﻟﻤﺘﺼﻔﺢ ﯾﻘﻮم ﺑﺎﻟﺒﺤﺚ ﻋﻦ ﺷﯿﻔﺮة اﻟﺨﺮﯾﻄﺔ اﻟﺘﻲ ﺣﺪدﻧﺎ اﺳﻤﻬﺎ ﻣﻊ ﻫﺬه اﻟﺨﺎﺻﯿﺔ ،وﻣﻦ ﺛﻢ ﯾﻄﺒﻘﻬﺎ ﻋﻠﻰ اﻟﺼﻮرة اﻟﻤﻌﻄﺎة ﻣﻬﻤﺎ ﻛﺎن ﻋﺪد ﻣﺮات إدراﺟﻬﺎ . اﻟﺜﺎﻧﯿﺔ :ﻣﺎذا ﻟﻮ ﻗﺮرﻧﺎ إﻟﻐﺎء ﻫﺬه اﻟﺼﻮرة ووﺿﻊ ﺻﻮرة أﺧﺮى ﻣﻜﺎﻧﻬﺎ .ﻫﻞ ﻣﻦ ﻣﺸﻜﻠﺔ؟ أﯾﻀﺎً ﻻ ﯾﻮﺟﺪ ﻫﻨﺎ أي ﻣﺸﻜﻠﺔ .ﻷن ﺗﻌﺮﯾﻒ اﻟﺨﺮﯾﻄﺔ ﺑﻄﺒﯿﻌﺘﻪ ﻏﯿﺮ ﻣﺮﺗﺒﻂ ﺑﺼﻮرة ﻣﺤﺪدة ﺑﻌﯿﻨﻬﺎ .ﻫﻮ ﻓﻘﻂ ﯾﻌﺮف ﻣﻨﺎﻃﻖ ﻣﺤﺪدة ﺑﺎﻟﺸﻜﻞ واﻟﻤﻮﻗﻊ .وﻟﻮ دﻗﻘﺖ اﻟﻨﻈﺮ ﻓﻲ ﻫﺬا اﻟﺘﻌﺮﯾﻒ ﻓﻠﻦ ﺗﺠﺪ ﻣﺎ ﯾﺸﯿﺮ إﻟﻰ أﻧﻬﺎ ﻣﺮﺗﺒﻄﺔ ﺑﺼﻮرة ﺑﻌﯿﻨﻬﺎ ،أﻟﯿﺲ ﻛﺬﻟﻚ؟ ﺑﻞ إﻧﻚ ﻟﻮ أدرﺟﺖ ﺻﻮرة أﻛﺒﺮ ﻣﻤﺎ ﯾﺠﺐ أو ﺣﺘﻰ ﺻﻮرة أﺻﻐﺮ ﻣﻤﺎ ﯾﺠﺐ واﺳﺘﺨﺪﻣﺖ ﺧﺎﺻﯿﺔ USEMAPﻣﻌﻬﻤﺎ ﻟﺘﺸﯿﺮ إﻟﻰ اﻟﺨﺮﯾﻄﺔ ،ﻓﻠﻦ ﺗﻮاﺟﻪ أي ﻣﺸﻜﻠﺔ ﻓﻲ ذﻟﻚ) .وأﻋﻨﻲ ﻫﻨﺎ ﻣﺸﻜﻠﺔ ﻟﻠﻤﺘﺼﻔﺢ )ﻟﻜﻦ ﺑﺎﻟﻄﺒﻊ ﻓﺎﻟﺼﻮرة اﻟﻜﺒﯿﺮة ﺳﺘﺤﺘﻮي ﻋﻠﻰ ﻣﻨﺎﻃﻖ دون وﺻﻼت ﺗﺸﻌﺒﯿﺔ ،واﻟﺼﻮرة اﻟﺼﻐﯿﺮة ﺳﻮف ﻟﻦ ﺗﺤﺘﻮي ﻋﻠﻰ ﺑﻌﺾ اﻟﻮﺻﻼت اﻟﻤﻌﺮﻓﺔ ﻓﻲ اﻟﺨﺮﯾﻄﺔ ﻛﻤﺎ ﺗﺮي ﻓﻲ ﻫﺬا اﻟﺸﻜﻞ:-
ﺧﻄﺄ! واﻟﺨﻼﺻﺔ أن ﺗﻌﺮﯾﻒ اﻟﺨﺮﯾﻄﺔ ﻫﻮ ﺗﻌﺮﯾﻒ ﻣﺸﺎع ﯾﻮﺿﻊ ﻣﺮة واﺣﺪة ﻓﻘﻂ وﻓﻲ أي ﻣﻜﺎن داﺧﻞ اﻟﺼﻔﺤﺔ ،وﺑﺸﺮطأن ﯾﻜﻮن ﺿﻤﻦ وﺳﻢ > </BODY> ... <BODYوﺑﺎﻟﻤﻘﺎﺑﻞ ﻧﺴﺘﻄﯿﻊ إدراج ﻋﺸﺮات اﻟﺼﻮر ﻣﻬﻤﺎ ﻛﺎﻧﺖ ﻃﺒﯿﻌﺘﻬﺎ داﺧﻞ اﻟﺼﻔﺤﺔ ﻟﺘﻜﻮن ﺧﺮاﺋﻂ ﺻﻮرﯾﺔ ﺗﺴﺘﺨﺪم ﻧﻔﺲ ﺗﻌﺮﯾﻒ ﻫﺬه اﻟﺨﺮﯾﻄﺔ ﻃﺎﻟﻤﺎ أﻧﻨﺎ وﺿﻌﻨﺎ اﻟﺨﺎﺻﯿﺔ \" USEMAP=\"#map_nameﻣﻊ ﻫﺬه اﻟﺼﻮر. وﻣﺴﻚ اﻟﺨﺘﺎم :ﺗﺤﻔﻞ اﻹﻧﺘﺮﻧﺖ ﺑﺎﻟﻜﺜﯿﺮ ﻣﻦ اﻟﺒﺮاﻣﺞ اﻟﺘﻲ ﺗﻘﻮم ﺑﺘﺼﻤﯿﻢ اﻟﺨﺮاﺋﻂ اﻟﺼﻮرﯾﺔ ﺑﺴﺮﻋﺔ وﺳﻬﻮﻟﺔﻣﺘﻨﺎﻫﯿﺘﯿﻦ ..ﻓﻘﻂ ﺗﻘﻮم ﺑﺘﺤﻤﯿﻞ اﻟﺼﻮرة اﻟﻤﻄﻠﻮﺑﺔ ،ﺛﻢ ﺗﺮﺳﻢ اﻷﺷﻜﺎل اﻟﺘﻲ ﺗﺮﯾﺪﻫﺎ ﻋﻠﯿﻬﺎ ﻛﻤﺎ ﻟﻮ ﻛﻨﺖ ﺗﺴﺘﺨﺪم ﺑﺮﻧﺎﻣﺞ اﻟﺮﺳﺎم ،وﻣﻦ ﺛﻢ ﺗﻜﺘﺐ ﻋﻨﺎوﯾﻦ اﻟﻮﺻﻼت اﻟﺘﺸﻌﺒﯿﺔ اﻟﻤﻄﻠﻮﺑﺔ ﻟﻜﻞ ﻣﻦ ﻫﺬه اﻷﺷﻜﺎل .وﻫﻜﺬا ﺑﺒﺴﺎﻃﺔ ﯾﻘﻮم اﻟﺒﺮﻧﺎﻣﺞ ﺑﺈﯾﺠﺎد اﻹﺣﺪاﺛﯿﺎت اﻟﺨﺎﺻﺔ ﺑﻜﻞ ﺷﻜﻞ وإﻧﺸﺎء ﺷﯿﻔﺮة اﻟﺨﺮﯾﻄﺔ اﻟﻤﻄﻠﻮﺑﺔ!! أي أﻧﻚ ﺧﻼل دﻗﺎﺋﻖ ﻣﻌﺪودة ﺗﺴﺘﻄﯿﻊ إﻧﺸﺎء أﻋﻘﺪ اﻟﺨﺮاﺋﻂ اﻟﺼﻮرﯾﺔ ..ﻟﻜﻦ ﺑﻤﺎ أﻧﻚ ﺗﻬﻮى اﻟﺼﻌﺐ وﺗﺘﺤﺪى اﻟﻤﺴﺘﺤﯿﻞ ﻓﻼ اﻋﺘﻘﺪ أﻧﻚ ﺳﺘﻔﻀﻞ ﻫﺬا اﻟﻨﻮع ﻣﻦ اﻟﺒﺮاﻣﺞ) .ﺑﺎﻟﻤﻨﺎﺳﺒﺔ ،ﻟﻘﺪ ﻓﻀﻠﺖ ﺗﺄﺧﯿﺮ ﻛﺘﺎﺑﺔ ﻫﺬه اﻟﻤﻼﺣﻈﺔ ﺣﺘﻰ ﻧﻬﺎﯾﺔ ﻫﺬا اﻟﺪرس ،ﻷﻧﻲ ﻟﻮ وﺿﻌﺘﻬﺎ ﻓﻲاﻟﺒﺪاﯾﺔ ﻟﻤﺎ أﻛﻤﻠﺖ ﻫﺬا اﻟﺪرس أﺻ ًﻼ وﻟﻬﺮﻋﺖ ﻟﻺﻧﺘﺮﻧﺖ ﻟﻠﺒﺤﺚ ﻋﻦ ﻣﺜﻞ ﻫﺬه اﻟﺒﺮاﻣﺞ( وﻋﻠﻰ أﯾﺔ إﻟﯿﻚ ﻫﺬا اﻟﻌﻨﻮان ﻟﺒﺮﻧﺎﻣﺞ راﺋﻊ ﯾﺪﻋﻰ Live Imageﻣﻦ ﺷﺮﻛﺔ Mediatec اﻟﺪرس اﻟﺘﺎﻟﻲ««« إﺿﺎﻓﺔ اﻟﻮﺳﺎﺋﻂ اﻟﻤﺘﻌﺪده ﻓﻲ ﻫﺬا اﻟﻔﺼﻞ ﺳﻨﺘﺤﺪث ﻋﻦ ﻛﯿﻔﯿﻪ إﺿﺎﻓﺔ ) إدراج ) اﻟﻮﺳﺎﺋﻂ اﻟﻤﺘﻌﺪده. ﻓﻬﺮس اﻟﺼﻔﺤﺔ
] ﺻﻮت اﻟﺨﻠﻔﯿﻪ | إدراج وﺳﺎﺋﻂ أﺧﺮى | وﺳﻢ ال[ EMBED ><BGSOUNDﻫﻞ ﺗﺄﻛﺪت أن ﻣﻜﺒﺮات اﻟﺼﻮت ﻓﻲ ﺟﻬﺎزك ﺗﻌﻤﻞ ﺟﯿﺪاً؟ ﻣﻦ اﻟﻤﻔﺘﺮض ﻋﻨﺪ دﺧﻮﻟﻚ ﻟﻬﺬه اﻟﺼﻔﺤﺔ أن ﺗﺴﻤﻊ ﻣﻘﻄﻌﺎً ﻣﻮﺳﯿﻘﯿًﺎ ﯾُﻌﺰف ﺑﺼﻮرة ﺗﻠﻘﺎﺋﯿﺔ )أرﺟﻮ أن ﯾﻌﺠﺒﻚ(. ﻣﻼﺣﻈﺔ ﻫﺬا اﻟﻮﺳﻢ ﻻ ﯾﻌﻤﻞ إﻻ ﻣﻊ اﻹﻧﺘﺮﻧﺖ إﻛﺴﯿﺒﻠﻮﻟﺮ ﺗﺴﺘﻄﯿﻊ ﺗﻌﯿﯿﻦ أي ﻣﻠﻒ ﺻﻮﺗﻲ ﯾﺤﻤﻞ اﻹﻣﺘﺪاد midأو wavأو auﺑﺤﯿﺚ ﯾﻌﻤﻞ ﺗﻠﻘﺎﺋﯿًﺎ ﻋﻨﺪﻣﺎ ﯾﺘﻢ ﺗﺤﻤﯿﻞاﻟﺼﻔﺤﺔ ﻓﻲ اﻟﻤﺘﺼﻔﺢ ،وذﻟﻚ ﺑﺎﺳﺘﺨﺪام اﻟﻮﺳﻢ >) <BGSOUNDأي (BackGround Soundﻓﻌﻠﻰ ﺳﺒﯿﻞ اﻟﻤﺜﺎل ،ﻗﻤﺖ ﺑﺈدراج اﻟﻤﻘﻄﻊ اﻟﺬي ﺗﺴﻤﻌﻪ واﻟﻤﺴﻤﻰ yankee.midﺑﺎﻟﻄﺮﯾﻘﺔ اﻟﺘﺎﻟﯿﺔ>\"<BGSOUND SRC=\"yankee.mid إذن ﻫﻨﺎك اﻟﺨﺎﺻﯿﺔ SRCواﻟﺘﻲ ﺗﺴﺘﺨﺪم ﻛﻤﺎ ﺗﺮى ﻟﺘﺤﺪﯾﺪ اﺳﻢ اﻟﻤﻠﻒ اﻟﻤﺪرج .ﻛﻤﺎ ﯾﻮﺟﺪ أﯾﻀﺎً اﻟﺨﺎﺻﯿﺔ LOOP اﻟﺘﻲ ﺗﺤﺪد ﻋﺪد ﻣﺮات ﺗﻜﺮار ﻋﺰف اﻟﻤﻘﻄﻮﻋﺔ أي أﻧﻬﺎ ﺗﺄﺧﺬ أرﻗﺎﻣﺎً ﺻﺤﯿﺤﺔ ﻋﺎدة .أﻣﺎ ﻟﻮ ﻗﻤﺖ ﺑﺈﻋﻄﺎءﻫﺎ اﻟﻘﯿﻤﺔ- 1أو اﻟﻘﯿﻤﺔ infiniteﻓﻬﺬا ﺳﻮف ﯾﺆدي إﻟﻰ ﺗﻜﺮار ﻋﺰف اﻟﻤﻘﻄﻮﻋﺔ إﻟﻰ ﻣﺎ ﻻ ﻧﻬﺎﯾﺔ )ﻻ ﺗﺨﻒ ،ﻓﻬﺬا ﻻ ﯾﻌﻨﻲ أناﻟﻌﺰف ﺳﯿﺴﺘﻤﺮ ﺑﻌﺪ أن ﺗﻘﻮم ﺑﺈﻃﻔﺎء ﺟﻬﺎزك( ﻓﻘﻂ ﺳﻮف ﺗﺴﻤﻌﻬﺎ ﻃﺎﻟﻤﺎ أﻧﻚ ﻣﻮﺟﻮد ﻓﻲ اﻟﺼﻔﺤﺔ وﺳﯿﺘﻮﻗﻒ ﺑﻤﺠﺮد اﻧﺘﻘﺎﻟﻚ ﻟﺼﻔﺤﺔ أﺧﺮى أو ﺧﺮوﺟﻚ ﻣﻦ اﻟﺒﺮﻧﺎﻣﺞ .>\"<BGSOUND SRC=\"yankee.mid\" LOOP=\"infinite>\"<BGSOUND SRC=\"yankee.mid\" LOOP=\"3 أﻣﺎ ﻓﻲ ﺣﺎﻟﺔ أردت إدراج وﺻﻼت ﺗﺸﻌﺒﯿﺔ ﻟﻤﻠﻔﺎت ﺻﻮﺗﯿﺔ ﻓﻲ ﻣﻮﻗﻌﻚ ﺑﺤﯿﺚ ﯾﻤﻜﻦ ﻟﻠﺰاﺋﺮ أن ﯾﺤﻤّﻠﻬﺎ أو أن ﯾﻨﻘﺮ ﻋﻠﯿﻬﺎ إذا أراد ﺳﻤﺎﻋﻬﺎ ،ﻓﺬﻟﻚ ﯾﺘﻢ ﺑﺎﻟﻄﺮﯾﻘﺔ اﻹﻋﺘﯿﺎدﯾﺔ ﻹدراج اﻟﻮﺻﻼت واﻟﺘﻲ ﺗﻌﻠﻤﻨﺎﻫﺎ ﻓﻲ اﻟﺪرس اﻟﻮﺻﻼت اﻷﺳﺎﺳﯿﻪ أي ﻛﻤﺎ ﯾﻠﻲ:> </Aﲪﻞ ﻫﺬه اﳌﻘﻄﻮﻋﺔ>\"<A HREF=\"yankee.mid ﺗﻈﻬﺮ ﻟﻚ اﻟﻮﺻﻠﻪ ﺑﻬﺬا اﻟﺸﻜﻞ و ﻋﻨﺪ اﻟﻀﻐﻂ ﻋﻠﯿﻬﺎ ﯾﻈﻬﺮ ﻟﻚ ﺻﻨﺪوق اﻹﺧﺘﯿﺎرات ﺣﻤﻞ ﻫﺬه اﻟﻤﻘﻄﻮﻋﻪ وﻫﻲ -ﻛﻤﺎ ﺗﻌﻠﻢ -ﻃﺮﯾﻘﺔ ﻋﺎﻣﺔ ﻟﯿﺲ ﻟﻬﺎ ﻋﻼﻗﺔ ﺑﻨﻮع اﻟﻤﺘﺼﻔﺢ اﻟﻤﺴﺘﺨﺪم إدراج وﺳﺎﺋﻂ أﺧﺮى ﻣﻦ اﻟﻤﻌﺮوف أن اﻟﻤﺴﺘﻌﺮﺿﺎت ﻟﻦ ﺗﺴﺘﻄﯿﻊ أن ﺗﻌﺮض ﺟﻤﯿﻊ اﻟﻮﺳﺎﺋﻂ اﻟﻤﺘﻌﺪده اﻟﺘﻲ ﺗﻘﻮم ﺑﻮﺿﻌﻬﺎ ﻓﻲ ﺻﻔﺤﺎﺗﻚ وﻟﻜﻦ ﺑﺈﺳﺘﺨﺪام ال Plug Inﺗﺴﺘﻄﯿﻊ أن ﺗﺘﻐﻠﺐ ﻋﻠﻲ ﻫﺬه اﻟﻤﺸﻜﻠﻪ وﺗﻮﺿﯿﺤﺎ أﻛﺜﺮ ،ﻓﻠﻜﻲ ﺗﻘﻮم ﺑﻌﺮض ﻣﺜﻼﺟﺰء ﻣﻦ ﻓﯿﻠﻢ AVIأو ﺗﻘﻮم ﺑﻌﺮض اﻷﻏﻨﯿﻪ و ﺗﺘﺤﻜﻢ ﻓﯿﻬﺎ ﻣﻦ ﺣﯿﺚ اﻟﺘﻮﻗﻒ ﺛﻢ اﻹﺳﺘﻤﺮار ﻣﺮة أﺧﺮي ﻓﺄﻧﺖ ﺗﺤﺘﺎج إﻟﻲ أن ﯾﻜﻮن اﻟﺠﻬﺎز اﻟﺬي ﺳﯿﻘﻮم ﺑﻌﺮض ﺻﻔﺤﺎﺗﻚ ﻣﺜﺒﺖ ﺑﻪ ال Plug Inاﻟﺨﺎﺻﻪ ﺑﻬﺬه اﻟﻮﺳﺎﺋﻂ أو Multimediaو ﺗﺠﺪ ﻫﺬه ال Plug Inﻣﻮﺟﻮد ﻣﻊ ﻛﺜﯿﺮ ﻣﻦ اﻟﺒﺮاﻣﺞ ﻣﺜﻞ » Windows Media Player وﻫﺬا ﯾﺴﺎﻋﺪ ﻣﺴﺘﺨﺪﻣﯿﻦ اﻹﻧﺘﺮﻧﺖ إﻛﺴﯿﺒﻠﻮﻟﺮ ) ( Internet Explorerأﻣﺎ ﺑﺎﻟﻨﺴﺒﻪ ﻟﻤﺴﺘﺨﺪﻣﻲ اﻟﻨﺖ ﺳﻜﯿﺐ Netscapeﻓﻼﺑﺪ وان ﯾﻜﻮن ﻟﺪﯾﻬﻢ » Netscape's plug-in centreأﻣﺎ ﺑﺎﻟﻨﺴﺒﺔ ﻟﻤﺴﺘﺨﺪم اﻟﻤﺘﺼﻔﺤﯿﻦ اﻟﺴﺎﺑﻘﯿﻦ ﻓﻼﺑﺪ وان ﯾﻜﻮن ﻟﺪﯾﻪ » QuickTime
The EMBED Tag ﻧﺄﺗﻲ اﻵن إﻟﻲ ﻛﯿﻔﯿﻪ وﺿﻊ أو إدراج ﻫﺬه اﻟﻮﺳﺎﺋﻂ و ﻟﻬﺬا ﻧﺴﺘﺨﺪم اﻟﻮﺳﻢ > <EMBEDوﻫﻮ اﻟﻮﺳﻢ اﻟﺨﺎص ﺑﺈدراج اﻟﻮﺳﺎﺋﻂ اﻟﻤﺘﻌﺪده وﺗﻜﻮن ﺻﯿﻐﺘﻪ ﻛﺎﻟﺘﺎﻟﻲ\"<EMBED SRC=\"Media/CANYON.MID\" AUTOSTART=\"false\" LOOP=\"false\" HEIGHT=\"45WIDTH=\"170\"><NOEMBED>You Must Have QuickTime Program you can download it from>http://www.quicktime.com</NOEMBED You Must Have QuickTime Program you can download it from http://www.quicktime.com ﻧﺄﺗﻲ اﻵن إﻟﻲ ﺷﺮح اﻟﻮﺳﻚ وﺧﻮاﺻﻪ و ﺗﻼﺣﻆ ﻓﻲ ﻫﺬا اﻟﻮﺳﻢ اﻟﻜﺜﯿﺮ ﻣﻦ اﻟﺨﻮاﺻﻪ اﻟﺘﻲ ﻗﻤﻨﺎ ﺑﺸﺮﺣﻬﺎ ﻓﻲ وﺳﻮم اﻟﺼﻮر ﻣﺜﻞ اﻟﻌﺮض واﻹرﺗﻔﺎع وﻣﻜﺎن اﻟﻤﻠﻒ و ﺳﻨﻘﻮم ﺑﺸﺮح اﻟﺨﻮاص اﻟﺠﺪﯾﺪه ﻋﻠﯿﻚ \"AUTOSTART=\"... و ﻫﺬه اﻟﺨﺼﯿﻪ ﺗﺄﺧﺬ اﻟﻘﯿﻤﺔ Trueأو Falseﻹأذا ﻗﻤﺖ ﺑﺄﻋﻄﺎﺋﻬﺎ اﻟﻘﯿﻤﺔ Falseﻓﻬﺬا ﯾﺠﻊ اﻟﻤﻠﻒ ﯾﻌﻤﻞ ﻋﻨﺪﻣﺎ ﯾﻘﻮم ﺑﺘﺸﻐﯿﻠﻪ اﻟﻤﺴﺘﺨﺪم أم إذا ﻛﺎن Trueﻓﻬﻮ ﯾﻌﻤﻞ ﺑﻄﺮﯾﻘﻪ ﻃﻠﻘﺎﺋﯿﻪ و ﻣﻦ وﺟﻬﺔ ﻧﻈﺮي ﻓﺄﻧﺎ أﻧﺼﺢ ]أن ﺗﺘﺮك اﻟﺤﺮﯾﻪ ﻟﻠﻤﺴﺘﺨﺪم ﻗﺮار ﻣﺘﻲ ﯾﻘﻮم ﺑﺘﺸﻐﯿﻞ اﻟﻤﻠﻒ \"LOOP=\"... و ﺗﻘﻮم ﻫﺬه اﻟﺨﺼﯿﻪ ﺑﺘﺤﺪﯾﺪ أم ﯾﻌﻤﻞ اﻟﻤﻠﻒ ﺗﻠﻘﺎﺋﯿﻪ ﺑﻌﺪ إﻧﺘﻬﺎﺋﻪ أم ﻻ و ﯾﺄﺧﺬ أﯾﻀﺎ اﻟﻘﯿﻢ False ، True \"HIDDEN=\"... و ﺗﻘﻮم ﻫﺬه اﻟﺨﺎﺻﯿﻪ ﺑﺈﺧﻔﺎء ال Plug Inو ﻫﺬه اﻟﺨﺎﺻﯿﻪ ﺧﻄﯿﺮة ﺟﺪا ﺣﯿﺚ إﻧﻬﺎ ﺗﺠﻌﻞ اﻟﻤﻠﻒ ﯾﻌﻤﻞ دوﻣﺎ دون اﻟﺘﺤﻜﻢ ﻓﯿﻪ ﻣﻦ ﻗﺒﻞ اﻟﻤﺴﺘﺨﺪم إﻻ ﺑﺈﻏﻼق ﺻﻔﺤﺘﻚ ><NOEMBED> ......</NOEMBED و ﺗﻘﻮم ﻫﺬه اﻟﺨﺎﺻﯿﻪ ﺑﺈﻇﻬﺎر رﺳﺎﻟﻪ ﻟﻠﻤﺴﺘﺨﺪم اﻟﺬي ﻻ ﯾﻮﺟﺪ ﻟﺪﯾﻪ ال Pluge Inاﻟﺨﺎص ﺑﻬﺬا اﻟﻤﻠﻒ و اﻟﻤﻜﺎن اﻟﻤﻨﺎﺳﺐ ﻟﺘﺤﻤﯿﻞ ﻫﺬا اﻟﻤﻠﻒ ﻋﺒﺮ اﻹﻧﺘﺮﻧﺖ أﻣﺎ ﺑﺎﻟﻨﺴﺒﻪ ﻟﻤﻼﻓﺎت اﻟﻔﯿﺪﯾﻮ ﻓﺄﻧﺎ ﻟﻦ أدرج ﻣﻠﻒ ﻓﯿﺪﯾﻮ ﻓﻲ ﻫﺬه اﻟﺼﻔﺤﺔ ﻧﻈﺮا ﻛﺒﺮ ﺣﺠﻢ ﻣﻠﻔﺎت اﻟﻔﯿﺪﯾﻮ وﻟﻜﻦ ﯾﺠﺐ أن ﺗﻌﺮف أﻧﻬﺎ إﯾﻀﺎ ﺗﺴﺘﺨﺪم اﻟﻮﺳﻢ اﻟﺴﺎﺑﻖ ﺗﺮي اﻵن أﺳﻔﻞ ﻫﺬا اﻟﻜﻼم ﺷﻌﺎر ﯾﺘﺤﺮك وﻫﺬا اﻟﺸﻌﺎر ﯾﻌﺘﻤﺪ ﻋﻠﻲ وﺟﻮد ﺑﺮﻧﺎﻣﺞ ال « Macromedia Player Flashو إﯾﻀﺎ ﻧﺴﺘﺨﺪم ﻧﻔﺲ اﻟﻮﺳﻢ اﻟﺴﺎﺑﻖ ﻹدراﺟﻪ Have Macromedia Flash You Can Download It at Must You htt://www.macromedia.com اﻟﺪرس اﻟﺘﺎﻟﻲ«««
أﺳﻤﺎء اﻷﻟﻮان أﺳﻤﺎء اﻷﻟﻮان ﻣﻦ اﻟﻤﻤﻜﻦ اﺳﺘﺨﺪام أﺳﻤﺎء ﻫﺬه اﻷﻟﻮان ﻣﺒﺎﺷﺮة ﺑﺪ ًﻻ ﻣﻦ اﻷرﻗﺎم،ﺑﺎﻟﻨﺴﺒﺔ ﻟﺒﻌﺾ اﻷﻟﻮان اﻷﺳﺎﺳﯿﺔ واﻟﺪارﺟﺔ ﻟﻮن ﻛﻠﻬﺎ ذات أﺳﻤﺎء ﺟﻤﯿﻠﻪ١٤٠ ﻛﻮد وﻋﺪد ﻫﺬه اﻷﻟﻮان ﻫﻮHEX ﺑﻤﻌﻨﻲ اﻧﻬﺎ ﻻ ﺗﺤﺘﺎج ﻟﻠـ،اﻟﺴﺪاس ﻋﺸﺮﯾﺔ وﻟﻜﻦ ﺑﺎﻟﻠﻐﻪ اﻹﻧﺠﻠﯿﺰﯾﺔ ﻓﻤﺜﻼ أذا أرﺗﺪ اﻟﻠﻮن اﻷزرق ﺗﻜﺘﺐ COLOR=\"blue\" وﻫﺬا ﺟﺪول ﯾﻮﺿﺢ ﻫﺬه اﻷﻟﻮان وﻣﺴﻤﯿﺎﺗﻬﺎHEX ﻛﻤﺎ اﻟﺤﺎل ﻓﻲ أﻛﻮاد ال# وﻻ ﺗﺤﺘﺎج ﻟﻮﺿﻊ ﻫﺬه اﻟﻌﻼﻣﺔ : أﯾﻀﺎ وﻟﻜﻦ أﻧﺖ ﻻﺗﺤﺘﺎج ﻟﻜﺘﺎﺑﻪ أي ﻛﻮد ﻓﻘﻂ أﻛﺘﺐ أﺳﻢ اﻟﻠﻮنHEXوأﻛﻮاد ال Aqua Antiquewhite Aliceblue #00FFFF #FAEBD7 #F0F8FF Beige Azure Aquamarine #F5F5DC #F0FFFF #7FFFD4Blanchedalmond Black Bisque #FFEBCD #000000 #FFE4C4 Brown Blueviolet Blue #A52A2A #8A2BE2 #0000FF Chartreuse Cadetblue Burlywood #7FFF00 #5F9EA0 #DEB887 Cornflowerblue Coral Chocolate #6495ED #FF7F50 #D2691E Cyan Crimson Cornsilk #00FFFF #DC143C #FFF8DC Darkgoldenrod Darkcyan Darkblue #B8860B #008B8B #00008B Darkkhaki Darkgreen Darkgray #BDB76B #006400 #A9A9A9 Darkorange Darkolivegreen Darkmagenta #FF8C00 #556B2F #8B008B Darksalmon Darkred Darkorchid #E9967A #8B0000 #9932CC Darkslategray Darkslateblue Darkseagreen #2F4F4F #483D8B #8FBC8F Deeppink Darkviolet Darkturquoise #FF1493 #9400D3 #00CED1 Dodgerblue Dimgray Deepskyblue #1E90FF #696969 #00BFFF Forestgreen Floralwhite Firebrick #228B22 #FFFAF0 #B22222 Ghostwhite Gainsboro Fuchsia #F8F8FF #DCDCDC #FF00FF
Gray Goldenrod Gold#808080 #DAA520 #FFD700Honeydew Greenyellow Green #F0FFF0 #ADFF2F #008000 Indigo Indianred Hotpink#4B0082 #CD5C5C #FF69B4Lavender Khaki Ivory#E6E6FA #F0E68C #FFFFF0Lemonchiffon Lawngreen Lavenderblush #FFFACD #7CFC00 #FFF0F5Lightcyan Lightcoral Lightblue#E0FFFF #F08080 #ADD8E6Lightgrey Lightgreen Lightgoldenrodyellow#D3D3D3 #90EE90 #FAFAD2Lightseagreen Lightsalmon Lightpink #20B2AA #FFA07A #FFB6C1Lightsteelblue Lightslategray Lightskyblue #B0C4DE #778899 #87CEFALimegreen Lime Lightyellow #32CD32 #00FF00 #FFFFE0Maroon Magenta Linen#800000 #FF00FF #FAF0E6Mediumorchid Mediumblue Mediumauqamarine #BA55D3 #0000CD #66CDAAMediumslateblue Mediumseagreen Mediumpurple #9370D8#7B68EE #3CB371Mediumvioletred Mediumturquoise Mediumspringgreen#C71585 #48D1CC #00FA9AMistyrose Mintcream Midnightblue#FFE4E1 #F5FFFA #191970 Navy Navajowhite Moccasin#000080 #FFDEAD #FFE4B5Olivedrab Olive Oldlace #688E23 #808000 #FDF5E6 Orchid Orangered Orange#DA70D6 #FF4500 #FFA500Paleturquoise Palegreen Palegoldenrod #AFEEEE #98FB98 #EEE8AAPeachpuff Papayawhip Palevioletred#FFDAB9 #FFEFD5 #D87093 Plum Pink Peru#DDA0DD #FFC0CB #CD853F Red Purple Powderblue#FF0000 #800080 #B0E0E6Saddlebrown Royalblue Rosybrown #8B4513 #4169E1 #BC8F8FSeagreen Sandybrown Salmon#2E8B57 #F4A460 #FA8072Silver Sienna Seashell
#C0C0C0 #A0522D #FFF5EE Slategray Slateblue Skyblue #708090 #6A5ACD #87CEEB Steelblue Springgreen Snow #4682B4 #00FF7F #FFFAFA Thistle Teal Tan #D8BFD8 #008080 #D2B48C Violet Turquoise Tomato #EE82EE #40E0D0 #FF6347Whitesmoke White Wheat #F5F5F5 #FFFFFF #F5DEB3 YellowGreen Yellow #9ACD32 #FFFF00 اﻟﺪرس اﻟﺘﺎﻟﻲ«««216ﻛﻮد ﻷﻟﻮان ﻣﺨﺘﻠﻔﺔ ﻓﻬﺮس اﻟﺼﻔﺤﺔ] أﺧﺘﻼف اﻷﻟﻮان | أﻟﻮان اﻟﺨﻠﻔﯿﺎت | أﻟﻮان اﻟﻨﺺ [ ﺗﻮﺿﯿﺢ أﺧﺘﻼف اﻷﻟﻮانﻟﻮ ﻟﻢ ﺗﻼﺣﻆ أن اﻟﺼﻮر وﺻﻔﺤﺎت اﻟﻤﻮاﻗﻊ ﺗﻈﻬﺮ ﺑﺄﻟﻮان ﻣﺨﺘﻠﻔﺔ أذا ﺗﻢ ﻣﺸﺎﻫﺪﺗﻬﺎ ﻋﻠﻲ أﺟﻬﺰة ﻣﺨﺘﻠﻔﺔ أو ﻋﻠﻲﻣﺴﺘﻌﺮﺿﺎت ﻣﺨﺘﻠﻔﺔ ،ﻓﻤﻦ اﻟﻤﺤﺘﻤﻞ أن ﺗﺸﻤﻞ اﻟﺼﻮرة ﻋﻠﻲ ﻟﻮن ﻣﻌﯿﻦ ﻏﯿﺮ ﻣﺘﺎح ﻟﺪﯾﻚ وذﻟﻚ ﻻن ﻋﻤﻖ اﻟﻠﻮنﻣﻨﺨﻔﺾ ﺟﺪا ﻟﺪﯾﻚ ،وﻟﻜﻲ ﺗﺨﺘﺒﺮ ﻋﻤﻖ اﻷﻟﻮان ﻓﻲ اﻟﻮﯾﻨﺪوز أﺿﻐﻂ ﻋﻠﻲ ﻫﺬه اﻷﯾﻜﻮﻧﻪ اﻟﺼﻐﯿﺮة ﻓﻲ ﺷﺮﯾﻂ اﻟﻤﻬﺎموﻟﻮ وﺟﺪت أﻧﻚ ﻋﻠﻲ ﻋﻤﻖ أﻟﻮان ٢٥٦ﻟﻮن ﺳﺘﻔﻬﻢ ﻣﺎذا أﻗﺼﺪ !! وﻋﻨﺪﻫﺎ ﯾﺠﺐ أن ﺗﻌﺮف أن اﻟﻮﯾﻨﺪوز ﻟﯿﺲﻟﺪﯾﻪ ﻋﻤﻖ اﻷﻟﻮان اﻟﻌﺎﻟﻲ ﺟﺪا أو اﻟﻤﻠﯿﻮن ﻟﻮن ﻏﯿﺮ ﻣﺘﺎح ﻟﺪﯾﻪ ،وﻋﻨﺪﻫﺎ ﺳﯿﺤﺎول اﻟﻤﺴﺘﻌﺮض أن ﯾﻘﻠﺪ ﻫﺬا اﻟﻠﻮن ﺑﻤﺰج ﻟﻮﻧﯿﻦ أو أﻛﺜﺮ ﻣﻌﺎً ﻟﻜﻲ ﯾﻌﻄﯿﻚ اﻟﻠﻮن اﻟﻤﻄﻠﻮب ﺗﻘﺮﯾﺒﺎ ﻣﺜﺎل -:اﻟﻠﻮن اﻟﺒﺮﺗﻘﺎﻟﻲﺗﺨﯿﻞ أﻧﻚ ﺗﺮﯾﺪ ﻣﺜﻼ اﻟﻠﻮن اﻟﺒﺮﺗﻘﺎﻟﻲ وﻻ ﯾﻮﺟﺪ ﻟﺪي اﻟﻮﯾﻨﺪوز ﻗﺪرة ﻋﺎﻟﯿﻪ ﻣﻦ إﺳﺘﺨﺪام اﻷﻟﻮان ) اﻟﻤﻠﯿﻮن ﻟﻮن ﻏﯿﺮ ﻣﺘﺎح ( .ﻋﻨﺪﻫﺎ ﺳﯿﺤﺎول اﻟﻤﺴﺘﻌﺮض ﻣﺰج اﻟﻠﻮن اﻷﺣﻤﺮ واﻷﺻﻔﺮ ﻛﻬﺬا -:اﻵن أﻧﺖ ﺗﺮي اﻟﻔﺮق ﺑﯿﻦ اﻟﺼﻮرﺗﯿﻦ ﻓﻘﻂ ﻗﻒ ﻋﻠﻲ اﻟﺼﻮرة واﻗﺮأ ﻟﺘﻌﻠﻢ أﯾﻬﻢ ﻟﺪﯾﻪ اﻟﻘﺪرة ﻋﻠﻲ اﻟﻤﻠﯿﻮن ﻟﻮن و اﻷﺧﺮ ﻻ ،وﻟﻜﻦ ﻣﻦ اﻟﻮﻫﻠﻪ اﻷوﻟﻲ ﯾﺘﻀﺢ أن اﻟﺼﻮرة اﻟﻤﻮﺟﻮده ﻋﻠﻲ اﻟﯿﺴﺎر ذات اﻟﻤﻠﯿﻮن ﻟﻮن.
ﻣﻼﺣﻈﺔ -:ﻻﺑﺪ وان ﺗﻌﻠﻢ و اﻧﺖ ﺗﺴﺘﺨﺪم ﻫﺬه اﻷﻟﻮان أن اﻟـ HEXﻛﻮد ﯾﺠﺐ وان ﯾﺒﺪأ ﺑﻬﺬه اﻟﻌﻼﻣﺔ #ﻓﻲ ﺑﺪاﯾﻪ اﻟﺮﻗﻢ ﻋﻠﻲ ﺳﺒﯿﻞ اﻟﻤﺜﺎل -: \"COLOR=\"#0000FF ﺗﻼﺣﻆ أن اﻟﻘﯿﻢ اﻟﺴﺎﺑﻘﺔ ﻣﻜﻮﻧﺔ ﻣﻦ ﺳﺘﺔ رﻣﻮز ،وﻫﻲ ﻣﻜﺘﻮﺑﺔ ﺑﺎﻟﺼﯿﻐﺔ اﻟﺘﺎﻟﯿﺔ-: ﻫﻨﺎك ﺛﻼﺛﺔ أﻟﻮان أﺳﺎﺳﯿﺔ ﻫﻲ اﻷﺣﻤﺮ واﻷﺧﻀﺮ واﻷزرق ،وﻟﻜﻞ ﻣﻨﻬﺎ ﯾﻮﺟﺪ ٢٥٦درﺟﺔ ﻟﻮﻧﯿﺔ وﯾﻌﺒﺮ ﻋﻦ ﻫﺬه اﻟﺪرﺟﺎت ﺑﺎﻷرﻗﺎم ﻣﻦ ٠٠٠وﺣﺘﻰ .٢٥٥وﻣﻦ ﺧﻼل ﻣﺰج ﻫﺬه اﻷﻟﻮان ﺑﺪرﺟﺎﺗﻬﺎ اﻟﻠﻮﻧﯿﺔ اﻟﻤﺨﺘﻠﻔﺔ ﻧﺤﺼﻞ ﻋﻠﻰ اﻷﻟﻮان اﻷﺧﺮى. ﻓﻤﺜﻼ اﻟﻠﻮن اﻷﺳﻮد ﻣﻜﻮن ﻣﻦ اﻟﺪرﺟﺔ ٠٠٠ﻣﻦ ﻛﻞ ﻣﻦ اﻟﻠﻮن اﻷﺣﻤﺮ واﻷﺧﻀﺮ واﻷزرق .واﻟﻠﻮن اﻷﺑﯿﺾﻣﻜﻮن ﻣﻦ اﻟﺪرﺟﺔ ٢٥٥ﻣﻦ ﻫﺬه اﻷﻟﻮان .أﻣﺎ اﻟﻠﻮن اﻷﺻﻔﺮ ﻓﻬﻮ ﻣﻜﻮن ﻣﻦ اﻟﺪرﺟﺔ ٢٥٥ﻟﻠﻮن اﻷﺣﻤﺮ ،واﻟﺪرﺟﺔ ٢٥٥ﻟﻠﻮن اﻷﺧﻀﺮ ،واﻟﺪرﺟﺔ ٠٠٠ﻣﻦ اﻟﻠﻮن اﻷزرق ...وﻫﻜﺬا ﺑﻨﻔﺲ اﻟﻄﺮﯾﻘﺔ ﯾﺘﻢ ﺗﻜﻮﯾﻦ ﺑﺎﻗﻲ اﻷﻟﻮان .وﺑﻌﻤﻠﯿﺔ ﺣﺴﺎﺑﯿﺔ ﺑﺴﯿﻄﺔ 256×256×256ﯾﻨﺘﺞ ﻟﺪﯾﻨﺎ أن ﻋﺪد اﻷﻟﻮان اﻟﺘﻲ ﯾﻤﻜﻦ اﻟﺤﺼﻮل ﻋﻠﯿﻬﺎ ﺑﻤﺰج اﻷﻟﻮان اﻟﺜﻼﺛﺔ اﻟﺴﺎﺑﻘﺔ ﻫﻮ ١٦٧٧٧٢١٦ﺑﺎﻟﻀﺒﻂ . ﺣﺴﻨﺎ ،ﻟﻜﻦ ﻣﻦ أي ﺟﺎءت اﻟﺮﻣﻮز FFFFFFواﻟﺘﻲ ﻋﺒﺮت ﻋﻦ اﻟﻠﻮن اﻷﺑﯿﺾ ﺑﻬﺎ .إﻧﻬﺎ ﺑﺒﺴﺎﻃﺔ أرﻗﺎم…ﻣﻜﺘﻮﺑﺔ ﺑﺎﻟﻨﻈﺎم اﻟﺴﺪاس ﻋﺸﺮي( ﻧﻈﺎم ﻋﺪدي أﺳﺎﺳﻪ اﻟﺮﻗﻢ ١٦وﯾﻌﺒﺮ ﻋﻨﻪ ﺑﺎﺳﺘﺨﺪام اﻷرﻗﺎم اﻟﻌﺎدﯾﺔ ﻣﻦ ٠إﻟﻰ ٩ واﻟﺮﻣﻮز A,B,C,D,E,F ).ﻓﺎﻟﺮﻗﻢ ٢٥٥ﺑﺎﻟﻨﻈﺎم اﻟﻌﺸﺮي اﻟﻌﺎدي ﯾﻜﺎﻓﺌﻪ اﻟﺮﻗﻢ FFﺑﺎﻟﻨﻈﺎم اﻟﺴﺪاس ﻋﺸﺮي. إذن ﻓﺎﻟﺮﻗﻢ اﻟﺴﺪاس ﻋﺸﺮي FFﻋﻠﻰ اﻟﯿﺴﺎر ﯾﻤﺜﻞ اﻟﺪرﺟﺔ ٢٥٥ﻟﻠﻮن اﻷﺣﻤﺮ .واﻟﺮﻗﻢ FFﻓﻲ اﻟﻮﺳﻂ ﯾﻤﺜﻞ اﻟﺪرﺟﺔ ٢٥٥ﻣﻦ اﻟﻠﻮن اﻷﺧﻀﺮ .واﻟﺮﻗﻢ FFﻋﻠﻰ اﻟﯿﻤﯿﻦ ﯾﻤﺜﻞ اﻟﺪرﺟﺔ ٢٥٥ﻣﻦ اﻟﻠﻮن اﻷزرق . وﻋﻠﻰ ﻫﺬا اﻟﻤﻨﻮال ﯾﻌﺒﺮ ﻋﻦ اﻟﻠﻮن اﻷزرق اﻟﻔﺎﺗﺢ ﺑﺎﻟﺮﻗﻢ اﻟﺴﺪاس ﻋﺸﺮي : CC6699أﻣﺎ اﻟﻠﻮن اﻷﺳﻮد ﻓﺮﻗﻤﻪ ﻫﻮ000000. و اﻟﺠﺪول اﻟﺘﺎﻟﻲ ﯾﺒﯿﻦ ٢١٦ﻟﻮن ﻣﻤﺘﺰﺟﯿﻦ وأﻛﻮادﻫﻢ أﻣﺎ إذا ﻛﻨﺖ ﺗﺮﯾﺪ أﻛﺜﺮ ﻣﻦ ذﻟﻚ أﺿﻐﻂ ﻫﻨﺎ ﺑﯿﺎن ﺑﺄﻟﻮان اﻟﺨﻠﻔﯿﺎت #00FF00 #00CC00 #009900 #006600 #003300 #000000 #00FF33 #00CC33 #009933 #006633 #003333 #000033 #00FF66 #00CC66 #009966 #006666 #003366 #000066 #00FF99 #00CC99 #009999 #006699 #003399 #000099 #00FFCC #00CCCC #0099CC #0066CC #0033CC #0000CC
#00FFFF #00CCFF #0099FF #0066FF #0033FF #0000FF #33FF00 #33CC00 #339900 #336600 #333300 #330000 #33FF33 #33CC33 #339933 #336633 #333333 #330033 #33FF66 #33CC66 #339966 #336666 #333366 #330066 #33FF99 #33CC99 #339999 #336699 #333399 #330099#33FFCC #33CCCC #3399CC #3366CC #3333CC #3300CC#33FFFF #33CCFF #3399FF #3366FF #3333FF #3300FF #66FF00 #66CC00 #669900 #666600 #663300 #660000#66FFCC #66CC33 #669933 #666633 #663333 #660033 #66FF66 #66CC66 #669966 #666666 #663366 #660066 #66FF99 #66CC99 #669999 #666699 #663399 #660099#66FFCC #66CCCC #6699CC #6666CC #6633CC #6600CC#66FFFF #66CCFF #6699FF #6666FF #6633FF #6600FF #99FF00 #99CC00 #999900 #996699 #993300 #990000 #99FF33 #99CC33 #999933 #996633 #993333 #990033 #99FF66 #99CC66 #999966 #996666 #993366 #990066 #99FF99 #99CC99 #999999 #996699 #993399 #990099#99FFCC #99CCCC #9999CC #9966CC #9933CC #9900CC#99FFFF #99CCFF #9999FF #9966FF #9933FF #9900FF#CCFF00 #CCCC00 #CC9900 #CC6600 #CC3300 #CC0000#CCFF33 #CCCC33 #CC9933 #CC6633 #CC3333 #CC0033#CCFF66 #CCCC66 #CC9966 #CC6666 #CC3366 #CC0066#CCFF99 #CCCC99 #CC9999 #CC6699 #CC3399 #CC0099#CCFFCC #CCCCCC #CC99CC #CC66CC #CC33CC #CC00CC#CCFFFF #CCCCFF #CC99FF #CC66FF #CC33FF #CC00FF#FFFF00 #FFCC00 #FF9900 #FF6600 #FF3300 #FF0000#FFFF33 #FFCC33 #FF9933 #FF6633 #FF3333 #FF0033#FFFF66 #FFCC66 #FF9966 #FF6666 #FF3366 #FF0066#FFFF99 #FFCC99 #FF9999 #FF6699 #FF3399 #FF0099#FFFFCC #FFCCCC #FF99CC #FF66CC #FF33CC #FF00CC#FFFFFF #FFCCFF #FF99FF #FF66FF #FF33FF #FF00FF (ﺑﯿﺎن ﺑﺄﻟﻮان اﻟﻨﺺ ) اﻟﺨﻂ | | أﺧﻀﺮ < أزرق#0000FF #0000CC #000099 #000066 #000033 #000000 _#0033FF #0033CC #003399 #003366 #003333 #003300#0066FF #0066CC #006699 #006666 #006633 #006600 أ#0099FF #0099CC #009999 #009966 #009933 #009900 خ#00CCFF #00CCCC #00CC99 #00CC66 #00CC33 #00CC00 ض#00FFFF #00FFCC #00FF99 #00FF66 #00FF33 #00FF00 ر#3300FF #3300CC #330099 #330066 #330033 #330000
#3333FF #3333CC #333399 #333366 #333333 #333300 > #3366FF #3366CC #336699 #336666 #336633 #336600 #3399FF #3399CC #339999 #339966 #339933 #339900 أ#33CCFF #33CCCC #33CC99 #33CC66 #33CC33 #33CC00 ح#33FFFF #33FFCC #33FF99 #33FF66 #33FF33 #33FF00 م #6600FF #6600CC #660099 #660066 #660033 #660000 ر #6633FF #6633CC #663399 #663366 #663333 #663300 _ #6666FF #6666CC #666699 #666666 #666633 #666600 #6699FF #6699CC #669999 #669966 #669933 #669900#66CCFF #66CCCC #66CC99 #66CC66 #66CC33 #66CC00#66FFFF #66FFCC #66FF99 #66FF66 #66FF33 #66FF00 #9900FF #9900CC #990099 #990066 #990033 #990000 #9933FF #9933CC #993399 #993366 #993333 #993300 #9966FF #9966CC #996699 #996666 #996633 #996600 #9999FF #9999CC #999999 #999966 #999933 #999900#99CCFF #99CCCC #99CC99 #99CC66 #99CC33 #99CC00#99FFFF #99FFCC #99FF99 #99FF66 #99FF33 #99FF00#CC00FF #CC00CC #CC0099 #CC0066 #CC0033 #CC0000#CC33FF #CC33CC #CC3399 #CC3366 #CC3333 #CC3300#CC66FF #CC66CC #CC6699 #CC6666 #CC6633 #CC6600#CC99FF #CC99CC #CC9999 #CC9966 #CC9933 #CC9900#CCCCFF #CCCCCC #CCCC99 #CCCC66 #CCCC33 #CCCC00#CCFFFF #CCFFCC #CCFF99 #CCFF66 #CCFF33 #CCFF00#FF00FF #FF00CC #FF0099 #FF0066 #FF0033 #FF0000#FF33FF #FF33CC #FF3399 #FF3366 #FF3333 #FF3300#FF66FF #FF66CC #FF6699 #FF6666 #FF6633 #FF6600#FF99FF #FF99CC #FF9999 #FF9966 #FF9933 #FF9900#FFCCFF #FFCCCC #FFCC99 #FFCC66 #FFCC33 #FFCC00#FFFFFF #FFFFCC #FFFF99 #FFFF66 #FFFF33 #FFFF00 «««اﻟﺪرس اﻟﺘﺎﻟﻲاﻟﺠﺪاول ﻟﻜﻦ ﺗﻬﻞ ﻋﻠﯿﻨﺎ اﻟﺠﺪاول، اﻟﺠﺪاول ﻣﻤﻤﻢ؟؟؟ ﻣﻔﯿﺪة ﺟﺪا ﻟﻌﻤﻞ اﻹﻃﺎرات اﻟﺨﺎرﺟﯿﻪ و ﺧﺼﻮﺻﺎ ﻣﻊ اﻹﺳﺘﻌﻤﺎل اﻟﺠﯿﺪ ﻟﻜﻦ ﻋﻨﺪﻣﺎ ﺗﺘﻤﻜﻦ ﻣﻨﻬﺎ وﺗﺘﻌﻠﻤﻬﺎ ﺟﯿﺪا ﻓﻬﺬا ﺳﯿﻜﻮن ﺟﺰء ﺛﻤﯿﻦ، ﺑﺎﻷﻛﻮاد واﻟﻮﺳﻮم و ﻫﺬا ﻣﺎ ﯾﺨﯿﻒ ﻓﻲ اﻟﻤﻮﺿﻮع HTMLوﯾﻜﺴﺒﻚ ﺧﺒﺮة ﻛﺒﯿﺮة ﻓﻲ ال أﺳﺎﺳﯿﺎت اﻟﺠﺪاول . ﻓﻲ ﻧﻔﺲ اﻟﻮﻗﺖ ﻟﻦ ﺗﺘﻌﻠﻢ إﻻ إذا ﺣﺎوﻟﺖ، أول ﺟﺪول ﻟﻚ داﺋﻤﺎ ﯾﻜﻮن اﻟﺸﺨﺺ ﺧﺎﺋﻒ وﻫﺎﺋﺐ أن ﯾﺤﺎول ( اﻟﺠﺪاول اﻟﻤﺘﻘﺪﻣﻪ ) ﻟﻠﻤﺤﺘﺮﻓﯿﻦ
أﻧﺖ ﺗﻌﺘﻘﺪ أﻧﻪ ﻻ ﯾﻮﺟﺪ ﺷﻲء أﻛﺜﺮ ﺗﻌﻘﯿﺪا ؟؟ أﻗﺮأ ﻫﺬا. اﻟﺠﺪاول اﻟﻤﺘﺪاﺧﻠﻪ واﻟﻤﺴﺘﺪﯾﺮة ) ﻟﻠﻤﺤﺘﺮﻓﯿﻦ (أﻛﺜﺮ ﺗﻌﻘﯿﺪا !!!! ﻟﺠﻌﻞ ﺟﺪاوﻟﻚ أﻛﺜﺮ ﺗﻌﻘﯿﺪا ﺿﻊ واﺣﺪا داﺧﻞ اﻵﺧﺮ و ﻗﻢ ﺑﺈﺳﺘﻌﻤﺎل ﺑﻌﺾ اﻟﺼﻮر اﻟﺼﻐﯿﺮة ﻟﻜﻲ ﺗﻌﻄﻲ ﻟﺠﺪوﻟﻚ زواﯾﺎ ﻣﺴﺘﺪﯾﺮة أﺳﺎﺳﯿﺎت اﻟﺠﺪاول ﺗﻌﺪ اﻟﺠﺪاول ﻣﻦ أﻗﻮى اﻷدوات اﻟﺘﻲ ﺗﺘﻀﻤﻨﻬﺎ ﻟﻐﺔ HTMLوأﻛﺎد أﺟﺰم ﺑﺄﻧﻪ ﻻ ﯾﻮﺟﺪ ﻣﻮﻗﻊ ﻓﻲ اﻹﻧﺘﺮﻧﺖ إﻻ وﯾﺴﺘﺨﺪﻣﻬﺎ ﺑﺼﻮرة أو ﺑﺄﺧﺮى ﻣﻊ اﻟﻌﻠﻢ أن ﻣﻮﻗﻌﻨﺎ ﻫﺬا ﻣﺼﻤﻢ ﻛﺎﻣﻠﺘﺎ ﺑﺎﻟﺠﺪاول .واﻟﺤﻘﯿﻘﺔ أن وﺿﻊ اﻟﺠﺪاول ﻓﻲﺻﻔﺤﺎت اﻟﻮﯾﺐ ﻻ ﯾﻘﺘﺼﺮ ﻋﻠﻰ ﺗﻠﻚ اﻟﻘﻮاﺋﻢ ﻣﻦ اﻟﺒﯿﺎﻧﺎت اﻟﺘﻲ ﻧﺤﺘﺎج ﻟﺘﺮﺗﯿﺒﻬﺎ ﻓﻲ ﺻﻔﻮف وأﻋﻤﺪة ،ﺑﻞ ﯾﺘﻌﺪى ذﻟﻚ إﻟﻰ اﺳﺘﺨﺪاﻣﻬﺎ ﻓﻲ ﺗﺼﻤﯿﻢ اﻟﺼﻔﺤﺎت ﻧﻔﺴﻬﺎ وﺗﻨﻈﯿﻤﻬﺎ ،واﻟﺘﺤﻜﻢ ﺑﻤﻈﻬﺮﻫﺎ ﺑﺼﻮرة ﻗﻮﯾﺔ وﻓﻌﺎﻟﺔ ﻻ ﯾﻤﻜﻦ أداؤﻫﺎ ﻣﻬﻤﺎ اﺳﺘﺨﺪﻣﻨﺎ ﻣﻦ وﺳﻮم ﺧﺎﺻﺔ ﺑﺘﻨﺴﯿﻖ اﻟﺼﻔﺤﺎت. ﻓﻬﺮس اﻟﺼﻔﺤﺔ] وﺳﻢ اﻟﺠﺪول | ﺧﺼﺎﺋﺺ اﻟﺠﺪول [ وﺳﻢ اﻟﺠﺪولإن اﻟﺘﻌﺎﻣﻞ ﻣﻊ اﻟﺠﺪاول وإدراﺟﻬﺎ ﻓﻲ ﺻﻔﺤﺎت اﻟﻮﯾﺐ ﺳﻬﻞ ﺟﺪًا ﻣﺜﻠﻪ ﻣﺜﻞ أي أداة ﻣﻦ أدوات HTMLﻟﻜﻨﻪ ﻗﺪﯾﺒﺪو ﻟﻚ ﻣﺮﺑﻜﺎً ﺑﻌﺾ اﻟﺸﻲء وﺧﺎﺻﺔ ﻓﻲ اﻟﺒﺪاﯾﺔ ،وذﻟﻚ ﻟﺘﻌﺪد اﻟﺨﺼﺎﺋﺺ اﻟﺘﻲ ﺗﺴﺘﻌﻤﻞ ﻣﻌﻬﺎ وﺗﻌﺪد اﻷوﺟﻪ اﻟﺘﻲﻧﺴﺘﻄﯿﻊ اﻟﺘﺼﺮف ﺑﻬﺎ .ﻟﻜﻦ ﻻ ﺗﻘﻠﻖ ﻓﻜﻞ ﺷﻲء ﯾﺒﺪو ﺻﻌﺒًﺎ ﻓﻲ ﺑﺪاﯾﺘﻪ وﻟﻜﻦ ﺳﺮﻋﺎن ﻣﺎ ﯾﺼﺒﺢ ﺳﻬﻼً.>\"<TABLE BORDER=\"1></TD></TRﺧﻠﯿﻪ 1</TD><TD>٢ﺧﻠﯿﻪ><TR><TD></TD></TRﺧﻠﯿﻪ 3</TD><TD>٤ﺧﻠﯿﻪ><TR><TD></TABLE و ﻫﺬا اﻟﻮﺳﻢ اﻟﺴﺎﺑﻖ ﯾﻨﺸﺎء اﻟﺠﺪول اﻟﺘﺎﻟﻲ ﺧﻠﯿﻪ ١ﺧﻠﯿﻪ ٢ ﺧﻠﯿﻪ ٣ﺧﻠﯿﻪ ٤ و اﻵن إﺳﻤﺢ ﻟﻲ أن أوﺿﺤﻠﻚ اﻟﻮﺳﻢ اﻟﺴﺎﺑﻖوﺳﻮم ﺗﻌﺮﯾﻒ اﻟﺠﺪول ></TABLE>...<TABLE Table Rowوﺳﻮم ﺗﻌﺮﯾﻒ اﻟﺼﻒ ﻓﻲ ></TR>...<TR اﻟﺠﺪول Table Dataوﺳﻮم ﺗﻌﺮﯾﻒ اﻟﺨﻼﯾﺎ ﻓﻲ ></TD>.... <TD اﻟﺼﻒ وﺗﻌﺮﯾﻒ ﻣﺤﺘﻮﯾﺎت ﻛﻞ ﺧﻠﯿﺔ
واﻵن ﻟﻨﺘﻜﻠﻢ ﺑﺼﻮرة أﻛﺜﺮ دﻗﺔ وﺗﻔﺼﯿﻼً:ﻫﺬه ﻫﻲ اﻟﻮﺳﻮم اﻟﺘﻲ ﻧﺒﺪأ ﺑﻬﺎ ﻹدراج ﺟﺪول ﻣﻜﻮن ﻣﻦ ﺧﻠﯿﺔ واﺣﺪة أو ﻣﻦ ﻣﻠﯿﻮن ﺧﻠﯿﺔ… اﻷﻣﺮ ﺳﯿﺎن><TABLE> ... </TABLE واﻵن ﺑﻌﺪ إدراج ﻫﺬﯾﻦ اﻟﻮﺳﻤﯿﻦ ،ﻫﻨﺎك ﺳﺆاﻟﯿﻦ ﯾﻨﺒﻐﻲ اﻹﺟﺎﺑﺔ ﻋﻠﯿﻬﻤﺎ .اﻷول :ﻛﻢ ﻋﺪد اﻟﺼﻔﻮف اﻟﺘﻲ ﻧﺮﯾﺪﻫﺎ ﻓﻲ اﻟﺠﺪول؟ ﺛﻼﺛﺔ ،أرﺑﻌﺔ ،ﻣﺎﺋﺔ؟ ﻻ ﺑﺄس ،ﻗﻢ ﺑﺈﺿﺎﻓﺔ اﻟﻮﺳﻮم><TR> ... </TR ﺑﻨﻔﺲ ﻋﺪد اﻟﺼﻔﻮف اﻟﺘﻲ ﺗﺮﯾﺪﻫﺎ .وﻟﻨﻔﺘﺮض ﻫﻨﺎ أﻧﻬﺎ ﺛﻼﺛﺔ .><TABLE><TR></TR><TR></TR><TR></TR></TABLE واﻟﺴﺆال اﻟﺜﺎﻧﻲ ﻫﻮ ،ﻛﻢ ﻋﺪد اﻟﺨﻼﯾﺎ )أو اﻷﻋﻤﺪة( اﻟﺘﻲ ﻧﺮﯾﺪﻫﺎ ﻓﻲ ﻛﻞ ﺻﻒ؟ وﻫﻨﺎ ﻧﻀﯿﻒ اﻟﻮﺳﻮم><TD> ... </TD ﺑﻨﻔﺲ ﻋﺪد اﻟﺨﻼﯾﺎ اﻟﻤﻄﻠﻮب .وﻣﻦ اﻟﺒﺪﯾﻬﻲ أن ﻧﻜﺘﺒﻬﺎ ﺑﯿﻦ اﻟﻮﺳﻮم > <TR> ... </TRﻃﺎﻟﻤﺎ أن اﻟﺨﻼﯾﺎ ﻫﻲ ﺟﺰء ﻣﻦ اﻟﺼﻔﻮف .وﻫﻨﺎ ﺳﺄﻓﺘﺮض أﻧﻨﺎ ﻧﺮﯾﺪ ﺧﻠﯿﺘﯿﻦ ﻓﻲ ﻛﻞ ﺻﻒ ،وﺑﺬﻟﻚ ﯾﺠﺐ ﺗﻜﺮار ﻛﺘﺎﺑﺘﻬﺎ ﻣﺮﺗﯿﻦ ﻟﻜﻞ ﺻﻒ. وأذﻛﺮك أن اﻟﻨﺺ اﻟﺬي ﻧﺮﯾﺪ إدراﺟﻪ ﻓﻲ اﻟﺨﻠﯿﺔ ﯾﻜﺘﺐ ﺿﻤﻦ ﻫﺬﯾﻦ اﻟﻮﺳﻤﯿﻦ .><TABLE><TR><TD> Data </TD><TD> Data </TD></TR><TR><TD> Data </TD><TD> Data </TD></TR><TR><TD> Data </TD
><TD> Data </TD></TR></TABLE ﻫﻞ اﺗﻀﺤﺖ ﻟﻚ اﻟﺼﻮرة اﻵن .أﻧﻈﺮ إﻟﻰ ﻧﺘﯿﺠﺔ اﻟﻌﻤﻞ اﻟﺘﻲ ﺣﺼﻠﻨﺎ ﻋﻠﯿﻬﺎ . Data Data Data Data Data Data ﻫﻨﺎك ﺷﻲء ﻣﺎ ﯾﻨﻘﺺ .ﺑﺎﻟﻄﺒﻊ ...اﻟﺤﺪود .اﻧﺘﻈﺮ ﻗﻠﯿ ًﻼ وﺳﺘﻌﺮف اﻟﺨﺎﺻﯿﺔ اﻟﺘﻲ ﺗﻘﻮم ﺑﺈﺿﺎﻓﺔ اﻟﺤﺪود ﻟﻠﺠﺪول وﻏﯿﺮﻫﺎ ﻣﻦ اﻟﺨﺼﺎﺋﺺ اﻷﺧﺮى .ﻷﻧﻨﻲ ﻗﺒﻞ أن أﺳﺘﻤﺮ أود أن أﻟﻔﺖ ﻧﻈﺮك ﻟﻤﺴﺄﻟﺔ ﻣﻌﯿﻨﺔ ﻓﻲ اﻟﺠﺪاول .وﻫﻲ أن ﻃﺮﯾﻘﺔ اﻟﺘﻌﺎﻣﻞ ﻣﻌﻬﺎ ﺗﺘﻢ ﻋﻠﻰ ﺛﻼﺛﺔ ﻣﺴﺘﻮﯾﺎت: oﻣﺴﺘﻮى اﻟﺠﺪول ﻛﻜﻞ oﻣﺴﺘﻮى اﻟﺼﻔﻮف ﻛﻜﻞ أو ﻛﻞ واﺣﺪ ﻋﻠﻰ ﺣﺪه oﻣﺴﺘﻮى اﻟﺨﻼﯾﺎ ﻛﻜﻞ أو ﻛﻞ واﺣﺪة ﻋﻠﻰ ﺣﺪه . وﻟﻜﻞ ﻣﻦ ﻫﺬه اﻟﻤﺴﺘﻮﯾﺎت ﺧﺼﺎﺋﺼﻪ اﻟﺘﻲ ﯾﻨﻔﺮد ﺑﻬﺎ ﻛﻤﺎ أن ﻫﻨﺎك ﺧﺼﺎﺋﺺ ﻣﺸﺘﺮﻛﺔ ﺗﺴﺘﺨﺪم ﻣﻊ ﻛﻞ اﻟﻮﺳﻮم . وﻧﺒﺪأ اﻵن ﺑﻤﻨﺎﻗﺸﺔ ﻫﺬه اﻟﺨﺼﺎﺋﺺ ﺧﺼﺎﺋﺺ اﻟﺠﺪول BORDERﺗﻘﻮم ﻫﺬه اﻟﺨﺎﺻﯿﺔ ﺑﺈﺿﺎﻓﺔ ﺣﺪود ﻟﻠﺠﺪول وﺗﺤﺪﯾﺪ ﺳﻤﺎﻛﺘﻬﺎ ،واﻟﻘﯿﻤﺔ اﻹﻓﺘﺮاﺿﯿﺔ ﻟﻬﺎ ﻫﻲ ﺻﻔﺮ أي ﻻ ﺣﺪود>\"<TABLE BORDER=\"5>\"<TABLE BORDER=\"0 ﺳﻤﻚ ﺣﺪود ﻫﺬا اﻟﺠﺪول ﻫﻲ ٥WIDTHﻧﺴﺘﺨﺪم ﻫﺬه اﻟﺨﺎﺻﯿﺔ ﻟﺘﺤﺪﯾﺪ ﻋﺮض اﻟﺠﺪول ﻛﻜﻞ .وﻫﻨﺎك أﺳﻠﻮﺑﯿﻦ ﻟﺘﺤﺪﯾﺪ اﻟﻌﺮض :اﻟﻤﻄﻠﻖ أي ﺑﻜﺘﺎﺑﺔ اﻟﺮﻗﻢ اﻟﺬي ﯾﻤﺜﻞ اﻟﻌﺮض ﺑﺼﻮرة ﻣﺒﺎﺷﺮة .واﻟﻨﺴﺒﻲ أي ﻛﺘﺎﺑﺔ رﻗﻢ ﻧﺴﺒﻲ ﻣﺌﻮي ﯾﺤﺪد ﻋﺮض اﻟﺠﺪول ﺣﺴﺐ ﻋﺮض ﻧﺎﻓﺬة اﻟﻤﺘﺼﻔﺢ) .أي أن ﻋﺮض اﻟﺠﺪول ﺳﯿﺨﺘﻠﻒ ﺑﺎﺧﺘﻼف ﻋﺮض ﻧﺎﻓﺬة اﻟﻤﺘﺼﻔﺢ ).>\"<TABLE WIDTH=\"600>\"<TABLE WIDTH=\"80% وﻫﺬا اﻟﺠﺪول ذو ﻋﺮض % ٨٠
HEIGHTﻟﺘﺤﺪﯾﺪ ارﺗﻔﺎع اﻟﺠﺪول ،وﯾﻜﻮن ﺗﺤﺪﯾﺪ ﻫﺬا اﻹرﺗﻔﺎع ﻣﻦ ﺧﻼل ﻗﯿﻤﺔ ﻣﻄﻠﻘﺔ ﺗﺤﺪد اﻹرﺗﻔﺎع ﺑﺎﻟﺒﯿﻜﺴﻞ. أو ﻗﯿﻤﺔ ﻧﺴﺒﯿﺔ ﺗﺤﺪد ارﺗﻔﺎع اﻟﺠﺪول ﺑﺎﻟﻨﺴﺒﺔ ﻹرﺗﻔﺎع ﺻﻔﺤﺔ اﻟﻤﺘﺼﻔﺢ ﻣﺜﻠﻬﺎ ﻣﺜﻞ اﻟﻌﺮض ﺗﻤﺎﻣﺎ>\"<TABLE HEIGHT=\"500>\"<TABLE HEIGHT=\"100% CELLSPACINGﻟﺘﺤﺪﯾﺪ اﻟﻤﺴﺎﻓﺔ ﺑﯿﻦ ﻛﻞ ﺧﻠﯿﺔ ﻣﻦ ﺧﻼﯾﺎ اﻟﺠﺪول>\"<TABLE CELLSPACING=\"10 ﺑﻌﺪ اﻟﻜﺘﺎﺑﻪ ﺗﻼﺣﻆ اﻟﺤﺪود ﺑﻤﻘﺪار10 ﻋﻦ CELLPADDINGﻟﺘﺤﺪﯾﺪ اﻟﻤﺴﺎﻓﺔ اﻟﻔﺎﺻﻠﺔ ﺑﯿﻦ اﻟﺤﺪود وﺑﺪاﯾﺔ اﻟﻨﺺ ﻓﻲ ﻛﻞ ﺧﻠﯿﺔ .أو ﻟﻨﻘﻞ :ﺗﺤﺪﯾﺪ ﺣﺠﻢ اﻟﻬﻮاﻣﺶ ﻟﺨﻼﯾﺎ اﻟﺠﺪول .>\"<TABLE CELLPADDING=\"10 ﺗﺒﺎﻋﺪ ﺗﻼﺣﻆ ﺑﻤﻘﺪار ١٠ اﻟﺨﻼﯾﺎ ALIGNﻟﺘﺤﺪﯾﺪ ﻣﺤﺎذاة اﻟﺠﺪول أﻓﻘﯿًﺎ ﻋﻠﻰ اﻟﺼﻔﺤﺔ ﯾﻤﯿﻨﺎً أو ﯾﺴﺎراً .وﻫﻮ ﯾﺄﺧﺬ اﻟﻘﯿﻢ right, left>\"<TABLE ALIGN=\"Left>\"<TABLE ALIGN=\"Rightﻫﺬا ﻟﻠﯿﺴﺎر و ﻫﺬا ﻟﻠﯿﻤﯿﻦ BGCOLORوﯾﺴﺘﺨﺪم ﻟﺘﺤﺪﯾﺪ ﻟﻮن اﻟﺨﻠﻔﯿﺔ ﻟﻠﺠﺪول و ﺗﺴﺘﻄﯿﻊ أﺧﺘﯿﺎر اﻟﻠﻮن أﻣﺎ ﺑﺎﻷﺳﻤﺎء أو ﻋﻦ ﻃﺮﯾﻖ ال HEXﻛﻮد>\"<TABLE BGCOLOR=\"#0099cc
و ﻫﺬا ذو ﺧﻠﻔﯿﻪ زرﻗﺎء اﻟﺪرس اﻟﺘﺎﻟﻲ««« اﻟﺠﺪاول اﻟﻤﺘﻘﺪﻣﺔﺗﻮﻗﻔﻨﺎ ﻓﻲ «اﻟﻔﺼﻞ اﻟﺴﺎﺑﻖ ﻋﻨﺪ ﻛﯿﻔﯿﻪ إﻧﺸﺎء ﺟﺪول وﺗﻌﺮﻓﻨﺎ ﻋﻠﻲ وﺳﻮم و اﻟﺨﺼﺎﺋﺺ اﻟﺨﺎﺻﻪ ﺑﻪ و ﻓﻲ ﻫﺬا اﻟﻔﺼﻞ ﺳﻨﻘﻮم ﺑﺸﺮح ﺧﺼﺎﺋﺺ اﻟﺨﻼﯾﺎ وﺑﻌﺾ اﻷﺷﯿﺎء اﻟﻤﺘﻘﺪة ﻓﻲ إﺳﺘﺨﺪام اﻟﺠﺪاول. ﻓﻬﺮس اﻟﺼﻔﺤﺔ| | ALIGN | VALIGN | BGCOLOR | WIDTH | HEIGHT | COLSPANﺧﺼﺎﺋﺺ اﻟﺠﺪول [ ]ROWSPAN | CAPTION ﺧﺼﺎﺋﺺ اﻟﺨﻼﯾﺎوﻧﺘﻜﻠﻢ اﻵن ﻋﻦ اﻟﺨﺼﺎﺋﺺ اﻟﻤﺴﺘﺨﺪﻣﺔ ﻣﻊ وﺳﻮم اﻟﺼﻒ > <TR> ... </TRوﻻ ﺑﺄس ﻣﻦ ﺗﺬﻛﯿﺮك أن ﻋﺪد اﻟﺼﻔﻮف ﻓﻲ اﻟﺠﺪول ﯾﺘﺤﺪد ﺑﻌﺪد ﻫﺬه اﻟﻮﺳﻮم .أﻣﺎ أﻫﻢ اﻟﺨﺼﺎﺋﺺ اﻟﺘﻲ ﺗﻀﺎف ﻟﻬﺬا اﻟﻮﺳﻢ ﻓﻬﻲ :ALIGNﻟﺘﺤﺪﯾﺪ ﻣﺤﺎذاة اﻟﻨﺺ أﻓﻘﯿًﺎ داﺧﻞ اﻟﺨﻼﯾﺎ اﻟﺘﻲ ﯾﺘﻜﻮن ﻣﻨﻬﺎ اﻟﺼﻒ ،واﻟﻘﯿﻢ اﻟﻤﺤﺘﻤﻠﺔ ﻟﻬﺎ ﻫﻲ Right, Left, Centerواﻟﻘﯿﻤﺔ اﻹﻓﺘﺮاﺿﯿﺔ ﻫﻲ Centerﻛﻤﺎ ﺗﺮي:->\"<TD ALIGN=\"LEFT>\"<TD ALIGN=\"RIGHTLeft Center right VALIGNﻟﺘﺤﺪﯾﺪ اﻟﻤﺤﺎذاة اﻟﻌﻤﻮدﯾﺔ ﻟﻠﻨﺺ داﺧﻞ ﺧﻼﯾﺎ اﻟﺼﻒ ،وذﻟﻚ إﻣﺎ ﻟﻸﻋﻠﻰ أو ﻟﻸﺳﻔﻞ أو ﻓﻲ اﻟﻤﻨﺘﺼﻒ أو ﻋﻠﻰ اﻣﺘﺪاد اﻟﺨﻂ اﻷﺳﺎﺳﻲ ﻟﻠﺨﻠﯿﺔ .وﻗﯿﻤﻬﺎ ﻋﻠﻰ اﻟﺘﻮاﻟﻲ ﻫﻲTop, Bottom, Middle :>\"<TR VALIGN=\"MIDDLE>\"<TR VALIGN=\"TOP>\"<TR VALIGN=\"BOTTOM top middle bottom
BGCOLORﻟﺘﺤﺪﯾﺪ ﻟﻮن اﻟﺨﻠﻔﯿﺔ ﻟﻠﺨﻼﯾﺎ اﻟﺘﻲ ﯾﺘﻜﻮن ﻣﻨﻬﺎ اﻟﺼﻒ .وﻫﻨﺎ ﯾﺘﻢ ﺗﺠﺎﻫﻞ ﻟﻮن اﻟﺨﻠﻔﯿﺔ اﻟﻤﺤﺪد ﺿﻤﻦ وﺳﻢ > <TABLEوﯾﺘﻢ ﺗﻄﺒﯿﻖ اﻟﻠﻮن اﻟﻤﺤﺪد ﻫﻨﺎ ﻓﻲ ﻫﺬه اﻟﺨﺎﺻﯿﻪ .و ﺗﺴﺘﻄﯿﻊ أﯾﻀﺎ أﺧﺘﯿﺎر اﻟﻠﻮن أﻣﺎ ﺑﺎﻷﺳﻤﺎء أو ﻋﻦ ﻃﺮﯾﻖ ال HEXﻛﻮد>\"<TR BGCOLOR=\"#4682B4>\"<TR BGCOLOR=\"#0099CC ﻫﺬا ﻫﻮ ﻟﻮن ﺧﻠﻔﯿﻪ اﻟﺠﺪول اﻷﺳﺎﺳﻲ ﻛﻤﺎ ﺗﺴﺘﻄﯿﻊ اﯾﻀﺎ ان ﺗﻀﻊ ﺻﻮرة ﻓﻲ اﻟﺨﻠﻔﯿﻪ ﻟﻠﺨﻼﯾﺎ>\"<TR BGCOLOR=\"face.gif ﻛﻤﺎ ﯾﻤﻜﻨﻚ أن ﺗﻜﺘﺐ ﻓﻮق اﻟﺼﻮرة WIDTHﺗﺤﺪد ﻋﺮض اﻟﺨﻠﯿﺔ ،وذﻟﻚ ﺑﻜﺘﺎﺑﺔ اﻟﻘﯿﻤﺔ اﻟﻤﺒﺎﺷﺮة ﻟﻠﻌﺮض اﻟﻤﻄﻠﻮب ﺑﺎﻟﺒﯿﻜﺴﻞ ،أو ﺑﻜﺘﺎﺑﺔ رﻗﻢ ﯾﻤﺜﻞاﻟﻨﺴﺒﺔ اﻟﻤﺌﻮﯾﺔ .وﯾﻜﻔﻲ ﺗﺤﺪﯾﺪ اﻟﻌﺮض ﻟﻠﺨﻼﯾﺎ ﻓﻲ أﺣﺪ اﻟﺼﻔﻮف ﻟﻜﻲ ﯾﺘﻢ ﺗﻄﺒﯿﻘﻪ ﻋﻠﻰ ﻛﻞ اﻟﺨﻼﯾﺎ ﻓﻲ ﻛﻞ اﻟﺼﻔﻮف HEIGHTﺗﺤﺪد اﻹرﺗﻔﺎع اﻟﻤﻄﻠﻮب ﻟﻠﺨﻠﯿﺔ ﻓﻲ اﻟﺼﻒ ،وذﻟﻚ ﺑﺎﻟﻄﺮق اﻟﻤﺒﺎﺷﺮة أو اﻟﻨﺴﺒﯿﺔ .وﻗﯿﺎﻣﻚ ﺑﺘﺤﺪﯾﺪ ارﺗﻔﺎع إﺣﺪى اﻟﺨﻼﯾﺎ ﻓﻲ اﻟﺼﻒ ﯾﺆدي إﻟﻰ ﺗﻄﺒﯿﻘﻪ ﻋﻠﻰ ﻛﻞ اﻟﺨﻼﯾﺎ ﻓﯿﻪ. COLSPANﯾﻘﻮم ﺑﺪﻣﺞ اﻟﺨﻠﯿﺔ اﻟﺤﺎﻟﯿﺔ ﻣﻊ اﻟﻌﺪد اﻟﻤﻄﻠﻮب ﻣﻦ اﻟﺨﻼﯾﺎ اﻟﺘﻲ ﺗﻠﯿﻬﺎ أﻓﻘﯿًﺎ >\"<TD COLSPAN=\"n ﺣﯿﺚ nﻫﻮ ﻋﺪد اﻟﺨﻼﯾﺎ اﻟﺘﻲ ﺳﯿﺘﻢ دﻣﺠﻬﺎ><tr> </tdوﺳﻌﺎ ﻫﺎي أﻧﺎ ﻫﻨﺎ أﻛﺜﺮ>\"<td colspan=\"3></tr><tr> </tdاﻟﻠﻌﻨﻪ ﯾﺎ>\"<td align=\"center> </tdﳓﻦ>\"<td align=\"center> !!!</tdﻻ>\"<td align=\"center></tr ﻫﺎي أﻧﺎ ﻫﻨﺎ أﻛﺜﺮ وﺳﻌﺎ ﯾﺎ اﻟﻠﻌﻨﻪ ﻧﺤﻦ ﻻ!!! ROWSPANﯾﻘﻮم ﺑﺪﻣﺞ اﻟﺨﻠﯿﺔ اﻟﺤﺎﻟﯿﺔ ﻣﻊ اﻟﻌﺪد اﻟﻤﻄﻠﻮب ﻣﻦ اﻟﺨﻼﯾﺎ اﻟﺘﻲ ﺗﻠﯿﻬﺎ ﻋﻤﻮدﯾﺎً )أي أﺳﻔﻠﻬﺎ(. >\"<TD ROWSPAN=\"n ﺳﯿﺘﻢ دﻣﺠﻬﺎ ﻫﻮ ﻋﺪد اﻟﺨﻼﯾﺎ اﻟﺘﻲ nوﺑﺎﻟﻄﺒﻊ
>\"<TABLE BORDER=\"1\" ALIGN=\"RIGHT\" WIDTH=\"200><TR></THواو><BRﳑﻤﻢ>\"<TH ROWSPAN=\"2></THاﻟﻌﻠﻮي اﳉﺰء><TH></TR></THاﻟﺴﻔﻠﻲ اﳉﺰء><TR><TH></TR></TABLEاﻟﺠﺰء اﻟﻌﻠﻮي ﻣﻤﻤﻤﻤﻢ....اﻟﺠﺰء اﻟﺴﻔﻠﻲ واووو CAPTIONاﻟﻮﺳﻮم اﻷﺧﯿﺮة اﻟﻤﺴﺘﺨﺪﻣﺔ ﻓﻲ اﻟﺠﺪاول ﻫﻲ > </CAPTION> ... <CAPTIONوﻫﻲ ﺗﺨﺘﺺ ﺑﺈﺿﺎﻓﺔﻋﻨﻮان رﺋﯿﺴﻲ ﻟﻠﺠﺪول ﻛﻜﻞ .ﻟﺬﻟﻚ ﻓﻬﻲ ﻋﻨﺪﻣﺎ ﺗﻜﺘﺐ ﯾﺘﻢ وﺿﻌﻬﺎ ﻣﺒﺎﺷﺮة ﺑﻌﺪ اﻟﻮﺳﻢ > <TABLEوﺑﺼﻮرة ﻣﺴﺘﻘﻠﺔ وﻟﯿﺲ ﺿﻤﻦ وﺳﻮم اﻟﺼﻔﻮف أو اﻟﺨﻼﯾﺎ.><TABLE></CAPTIONﻫﻨﺎ ﻋﻨﻮان اﳉﺪول ><CAPTION></TDﺑﯿﺎﻧﺎت><TD></TDاﳉﺪول><TD><tr></TDﺗﻀﻊ><TD> </TDﻫﻨﺎ><TD></tr></tableﻋﻨﻮان اﻟﺠﺪول ﻫﻨﺎاﻟﺠﺪول ﺑﯿﺎﻧﺎت ﻫﻨﺎ ﺗﻀﻊ اﻟﺪرس اﻟﺘﺎﻟﻲ«««اﻟﺠﺪاول اﻟﻤﺘﺪاﺧﻠﻪ و اﻟﻤﺴﺘﺪﯾﺮةﻓﻲ اﻟﺒﺪاﯾﻪ ﻧﺘﻤﻲ ان ﺗﻜﻮن ﻗﺪ ﻓﻬﻤﺖ ﻣﺎ ﺳﺒﻖ ﻣﻦ أﺳﺎﺳﯿﺎت اﻟﺠﺪاول و اﻟﺠﺪاول اﻟﻤﺘﻘﺪﻣﻪ و إذا ﻟﻢ ﺗﻜﻦ ﻧﺮﺟﻮا ان ﺗﻘﻮم ﺑﻤﺮاﺟﻌﺘﻬﻢ ﻣﺮة أﺧﺮي ،ﻓﻲ اﻟﺒﺪاﯾﻪ ﺳﻨﺘﻜﻠﻢ ﻋﻠﻲ اﻟﺠﺪاول اﻟﻤﺘﺪاﺧﻠﻪ ﺛﻢ ﻛﯿﻔﯿﻪ إﻋﻄﺎء ﻣﻨﻈﺮ ﺟﯿﺪ ﻟﻠﺠﺪاول و زواﯾﺎ ﻣﺴﺘﺪﯾﺮة ﻓﻬﺮس اﻟﺼﻔﺤﺔ
] ﺟﺪول داﺧﻞ ﺟﺪول | ﺟﺪاول ﻣﺴﺘﺪﯾﺮة [ ﺟﺪول داﺧﻞ ﺟﺪولﻛﯿﻒ ﯾﻤﻜﻦ ان ﺗﻨﺸﺄ ﺟﺪول ﺑﺪاﺧﻞ ﺟﺪول ؟ إن اﻹﺟﺎﺑﺔ ﻋﻠﻲ ﻫﺬا اﻟﺴﺆال ﻓﻲ ﻏﺎﯾﻪ اﻟﺒﺴﺎﻃﺔ واﻟﺴﻬﻮﻟﻪ ﻓﻘﻂ ﻛﻞ ﻣﺎﻋﻠﯿﻚ إﻻ أن ﺗﺤﺪد اﻟﺠﺪول اﻟﻜﺒﯿﺮ اﻟﺬي ﺳﯿﺤﺘﻮي ﺑﺪاﺧﻠﻪ اﻟﺠﺪول اﻵﺧﺮ ﻛﻤﺎ ﺗﺮي ﻫﻨﺎ ﺗﺮي اﻟﺠﺪول اﻵﺧﺮ ﻫﺬه ﻫﻲ اﻟﺨﻠﯿﻪ اﻷوﻟﻲ ﻓﻲ اﻟﺠﺪول اﻟﻜﺒﯿﺮو ﻫﺬا اﻟﺠﺪول ﺑﺪاﺧﻞ اﻟﺠﺪول اﻟﻜﺒﯿﺮ أﻣﺎ اﻟﺨﻠﯿﻪ اﻵﺧﺮة ﻓﻬﻲ اﻟﻤﻮﺟﻮده ﺑﺎﻟﯿﺴﺎر .و ﻟﻌﻤﻞ اﻟﺠﺪول داﺧﻞ ﺟﺪول ﯾﺘﻄﻠﺐ ﻣﻨﻚ ان ﺗﻘﻮم ﺑﻜﺘﺎﺑﺔ اﻷوﺳﻢ ﺻﺤﯿﺤﻪ و ﻫﺬا ﻫﻮ اﻟﻜﻮد اﻟﺨﺎص ﺑﻌﻤﻞ ﻣﺜﻞ ﻫﺬا اﻟﺠﺪول ) ﻻﺣﻆ أن ﻛﻮد اﻟﺠﺪول اﻵﺧﺮ ﺑﺪاﺧﻞ اﻟﻮﺳﻢ (><TABLE><TRﻫﻲ اﳋﻠﯿﻪ اﻷوﱄ ﰲ اﳉﺪول اﻟﻜﺒﲑ أﻣﺎ اﳋﻠﯿﻪ اﻷﺧﺮي ﻓﻬﻲ ﻫﺬه><TD></TDﺑﺎﻟﯿﺴﺎر اﳌﻮﺟﻮد><TD ><TABLE ></TH></TRﺗﺮي اﳉﺪول اﻵﺧﺮ ﻫﻨﺎ><TR><TH ></TH></TRاﳉﺪول اﻟﻜﺒﲑ و ﻫﺬا اﳉﺪول ﺑﺪاﺧﻞ><TR><TH ></TABLE></TD></TR></TABLE و ﺗﻼﺣﻆ أن اﻟﺠﺪول اﻷول ﺑﺪاء ﺑﺎﻟﻮﺳﻢ > <TABLEﺛﻢ ﺗﻌﺮﯾﻒ اﻟﺨﻼﯾﺎ ﺛﻢ ﺟﺎء وﺳﻢ اﻟﺠﺪول اﻵﺧﺮ أﯾﻀﺎ ﺑﺪاءﺑﺎﻟﻮﺳﻢ > <TABLEو ﻟﻢ ﻧﻘﻢ ﺑﺈﻧﻬﺎء وﺳﻢ اﻟﺠﺪول اﻷول ﺑﻌﺪ ﺛﻢ ﻗﻤﻨﺎ ﺑﺘﺤﺪﯾﺪ ﺧﻼﯾﺎ اﻟﺠﺪول اﻵﺧﺮ و إﻏﻼق اﻟﻮﺳﻢ و ﺑﻌﺪﻫﺎ ﻗﻤﻨﺎ ﺑﺈﻏﻼق اﻟﺨﻼﯾﺎ ﻟﻠﺠﺪول اﻟﺮﺋﯿﺴﻲ ﺛﻢ ﻗﻤﻨﺎ ﺑﺈﻏﻼﻗﻪ . رﺑﻤﺎ ﺗﻜﻮن ﺗﻌﺒﺖ ﻣﻦ اﻟﻌﻤﻞ ﺑﺎﻟﺠﺪاول ﺣﯿﺚ ان ﻛﻞ ﺷﻲء ﻣﺴﺘﻘﯿﻢ ﺣﺘﻰ اﻟﺤﻮاف واﻟﺰواﯾﺎ وﻟﻜﻦ ﻣﺎ رأﯾﻚ أن ﻧﻌﻄﻲ ﻟﻬﺎ ﺷﻜﻞ ﺟﺪﯾﺪ و ﺟﯿﺪ ﻣﺜﻼ ﻣﺎرأﯾﻚ أن ﻧﺠﻌﻞ ﺣﻮاف و زواﯾﺎ اﻟﺠﺪول ﻣﺴﺘﺪﯾﺮة ؟ إﻧﻬﺎ ﻓﻜﺮة راﺋﻌﻪ وﺳﻬﻠﻪ ﻻ ﺗﺤﺘﺎج ﻣﻨﻚ إﻻ ﺑﻌﺾ ﻓﻨﻮن اﻟﺮﺳﻢ اﻟﺒﯿﺎﻧﻲ ﻓﻘﻂ واﻟﺠﺪاول ،اﻵن ﺳﺄﺷﺮح ﻟﻚ ﻣﺎذا أﻗﺼﺪ ﻋﻠﻲ ﻫﺬا اﻟﻤﺜﺎل
oo ﻣﺤﺘﻮﯾﺎت اﻟﺨﻠﯿﻪ اﻷﺳﺎﺳﯿﻪ oo oo ﻣﺤﺘﻮﯾﺎت اﻟﺨﻠﯿﻪ اﻷﺳﺎﺳﯿﻪ oo ﻫﺬا ﻫﻮ اﻟﺠﺪول اﻟﺬي ﺳﻨﺠﻌﻞ زواﯾﺎ ﻣﺴﺘﺪﯾﺮة ﻓﻲ اﻟﺒﺪاﯾﻪ ﯾﺠﺐ ان ﺗﻜﻮن اﻟﺰواﯾﻪ ﺧﻼﯾﺎ ﻣﺴﺘﻘﻠﻪ ﺑﺬاﺗﻬﺎ وﻻ ﺷﻲء ﺑﺪاﺧﻠﻬﺎ و ﻟﻘﺪ وﺿﻌﺖ ﻓﻲ ﻛﻞ زاوﯾﻪ ﻣﻦ اﻟﺰواﯾﻪ \" \"oﺣﺘﻰ ﯾﺴﻬﻞ ﻋﻠﯿﻚ اﻷﻣﺮ ،ﻫﻨﺎك أرﺑﻊ زواﯾﺎ أذن ﻧﺤﻦ ﺳﻨﺤﺘﺎج إﻟﻲ أرﺑﻊ ﺻﻮر ﺑﺸﻜﻞ ﻣﺮﺑﻊ .ﯾﻜﻮن ﻣﻮﺟﻮد ﺑﻬﺎ ﻗﻮس وﻟﻜﻦ ﻛﻞ ﻗﻮس ﯾﻜﻮن ﺑﺸﻜﻞ ﻣﺨﺘﻠﻒ ﻻﻧﻬﻢ ﻛﻠﻬﻢ ﯾﻮاﺟﻬﻮان زواﯾﺎ ﻣﺨﺘﻠﻔﺔ . و ﯾﻜﻮن اﻟﻜﻮد ﻟﻬﺬا اﻟﺠﺪول ﻛﻤﺎ ﯾﻠﻲ -:>\"<TABLE BORDER=\"0\" WIDTH=\"200\" CELLPADDING=\"0\" CELLSPACING=\"0>\"<TR BGCOLOR=\"#CC00CC><TH WIDTH=\"15\">o</TH><TH WIDTH=\"170\"> </TH><TH WIDTH=\"15\">o</TH></TR>\"<TR BGCOLOR=\"#CC00CC><TH WIDTH=\"15\"> </TH>\"<TH WIDTH=\"170\" BGCOLOR=\"#CC3399Main Content cell></TH><TH WIDTH=\"15\"> </TH></TR>\"<TR BGCOLOR=\"#CC00CC><TH WIDTH=\"15\">o</TH><TH WIDTH=\"170\"> </TH><TH WIDTH=\"15\">o</TR></TABLEﻻ ﺑﺪ وان ﺗﻜﻮن ﻗﺪ ﻗﺮأت وﻓﻬﻤﺖ أﺳﺎﺳﯿﺎت اﻟﺠﺪاول و اﻟﺠﺪاول اﻟﻤﺘﻘﺪﻣﻪ ﻟﻜﻲ ﺗﺴﺘﻄﯿﻊ ان ﺗﻔﻬﻢ اﻟﻜﻮد اﻟﺴﺎﺑﻖ ﻛﻤﺎ ﯾﺠﺐ ان ﺗﺘﺬﻛﺮ ان اﻟﺨﻼﯾﺎ اﻟﻔﺎرﻏﻪ ﯾﺠﺐ ان ﺗﺤﺘﻮي ﻋﻠﻲ  ؛ ﻟﻜﻲ ﯾﻈﻬﺮوا ،و إذا ﻗﻤﺖ ﺑﺈﺳﺘﺨﺪام اﻟﻜﻮد اﻟﻌﻠﻮي ﻓﺴﺘﻼﺣﻆ ان اﻟﺠﺪول ﻃﻮﯾﻞ ﺟﺪا و ﻟﺬﻟﻚ ﻻﻧﻪ ﻣﻌﺮف ﻋﻠﻲ ﺣﺠﻢ ﺧﻂ ٣ﻟﻠﺨﻠﯿﻪ ﻛﺤﺠﻢ إﻓﺘﺮاﺿﻲ وﻟﻬﺬا ﻛﻞ ﻣﺎ ﻋﻠﯿﻂ ﻓﻌﻠﻪ ﻫﻮ ان ﺗﻀﻊ ﺧﺎﺻﯿﺔ وﺳﻢ اﻟﺨﻂ ﺣﻮﻟﻬﺎ ﻣﺜﻞ ﻫﺬا><FONT SIZE=\"1\"> </FONT
و اﻵن إﻟﻲ ﻣﺤﺮر اﻟﺮﺳﻮﻣﺎت أي ﺑﺮﻧﺎﻣﺞ ﯾﻘﻮم ﺑﻌﻤﻞ ﺻﻮر ذات إﻣﺘﺪاد gifﯾﺼﻠﺢ ﻟﻬﺬا ،ﻛﻦ ﻣﺘﺄﻛﺪ ﻣﻦ ﺣﺠﻢ اﻟﺼﻮرة اﻟﺘﻲ ﺳﺘﻘﻮم ﺑﺈﻧﺸﺎﺋﻬﺎ ﻓﻠﺬﻟﻚ ﻧﻨﺼﺢ داﺋﻤﺎ ﺑﺄن ﺗﻘﻮم ﺑﻌﻤﻞ اﻟﺠﺪول ﻓﻲ اﻟﺒﺪاﯾﻪ و ﺗﺨﺘﺎر اﻷﻟﻮان اﻟﻤﻨﺎﺳﺒﻪ ﺛﻢ ﺗﻘﻮم ﺑﺈﻧﺸﺎء اﻟﺼﻮر و ﻟﻘﺪ إﺧﺘﺎرت ﺣﺠﻢ ﺧﻼﯾﺎ اﻟﺠﺪول ١٥ × ١٥و ﻟﺬﻟﻚ ﻗﻤﺖ ﺑﻌﻤﻞ ﺻﻮرة ﺑﻨﻔﺲ اﻟﺤﺠﻢ ﻟﻌﻤﻞ أﻗﻮاس ﺻﻐﯿﺮة ﻟﻄﯿﻔﺔ ﻟﻜﻦ ﯾﻤﻜﻨﻚ أن ﺗﺨﺘﺎر اﻧﺖ ﻣﺎ ﺗﺮﯾﺪ ﻣﻦ أﺣﺠﺎم . ﻓﻘﻂ ﻗﻢ ﺑﻌﻤﻞ أﻗﻮاس ﻣﺴﺘﺪﯾﺮة ﺑﻨﻔﺲ ﻟﻮن ﺧﻠﻔﯿﻪ اﻟﺠﺪول ) ﻗﻢ ﺑﻌﻤﻞ ﻗﻮس واﺣﺪ ﺛﻢ ﻗﻢ ﺑﺤﻔﻆ اﻟﺼﻮرة ﺛﻢ ﻗﻢ ﺑﻠﻒ اﻟﺼﻮرة ﺳﺘﺤﺼﻞ ﻋﻠﻲ اﻟﺰواﯾﻪ اﻵﺧﺮى ﺛﻢ ﻗﻢ ﺑﺤﻔﻈﻬﺎ ﺛﻢ ﻫﻜﺬا ﺣﺘﻰ ﺗﺤﺼﻞ ﻋﻠﻲ اﻷﻗﻮاس اﻷرﺑﻊ ( و اﻵن ﻛﻞ ﻣﺎ ﻋﻠﯿﻚ ﻓﻌﻠﻪ ﻫﻮ أن ﺗﻀﻊ اﻟﺼﻮر ﻓﻲ اﻟﻤﻜﺎن اﻟﺼﺤﯿﻪ ﻓﻲ اﻟﺨﻼﯾﺎ ﻟﻠﺠﺪول و ﯾﺠﺐ ان ﺗﺘﺬﻛﺮ ﻋﺪم وﺟﻮد ﻣﺴﺎﻓﺎت ﺑﯿﻦ اﻟﺨﻼﯾﺎ وﺑﻌﻀﻬﺎ ﺣﺘﻲ ﺗﺤﺼﻞ ﻋﻠﻲ اﻟﺠﺪول ﻣﺘﻨﺎﺳﻖ . و ﻋﻨﺪ اﻧﺘﻬﺎء ﻣﻦ ﻛﻞ ﻫﺬا ،ﺳﯿﺼﺒﺢ ﻟﺪﯾﻚ ﺟﺪول ﺑﻬﺬا اﻟﺸﻜﻞ ﻣﺤﺘﻮﯾﺎت اﻟﺨﻠﯿﻪ اﻷﺳﺎﺳﯿﻪ http://www.yourhtmlsource.comBig Thanks For اﻷﻃﺮاﻷﻃﺮ ﺗﻌﻄﯿﻚ أﻣﻜﺎﻧﯿﻪ ﻓﺘﺢ أﻛﺜﺮ ﻣﻦ ﺻﻔﺤﺔ ﻓﻲ ﻧﻔﺲ اﻟﻤﺴﺘﻌﺮض ،ﻛﻤﺎ ﯾﻌﻄﯿﻚ أﻣﻜﺎﻧﯿﻪ ﻓﺘﺢ ﺻﻔﺤﺔ ﻓﻲ ﻧﺎﺣﯿﻪ آﺧﺮي ﻣﻦ ﻣﻦ اﻟﻤﺴﺘﻌﺮﺿﺎت ذات اﻟﻘﻀﺒﺎن ،و ﯾﺪﻣﺠﻮن ﺑﻄﺮﯾﻘﻪ ﻣﻌﯿﻨﻪ ﻓﻲ ﻟﻐﻪ ال HTMLو ﻋﻠﻲ اﻟﺮﻏﻢ ﻣﻦ اﻟﻌﻮاق اﻟﺘﻲ ﺗﺠﺪﻫﺎ إﻻ أﻧﻬﺎ ﻣﻔﯿﺪه ﺟﺪا ﻓﻲ ﻛﺜﯿﺮ ﻣﻦ اﻟﻤﻮاﻗﻊ. أﺳﺎﺳﯿﺎت اﻷﻃﺮ ﻫﺬه ﻣﻘﺪﻣﺔ ﻛﺎﻣﻠﺔ ﻓﻲ إﻧﺸﺎء اﻹﻃﺎرات. اﻷﻃﺮ اﻟﻤﺘﻘﺪﻣﻪ ﺧﻮاص أﻛﺜﺮ و ﺳﺘﺘﻌﻠﻢ ﻛﯿﻒ ﺗﺘﺤﻜﻢ وﺗﺴﯿﻄﺮ ﻓﻲ اﻷﻃﺮ ﺗﺎﺑﻊ اﻷﻃﺮ اﻟﻤﺘﻘﺪﻣﺔ
ﺳﻨﺘﺎﺑﻊ اﻟﺤﺪﯾﺚ ﻋﻦ اﻟﻮﺳﻮم واﻟﺨﻮاص اﻟﻤﺘﻘﺪﻣﺔ اﻟﻤﺴﺘﺨﺪﻣﺔ ﻣﻊ اﻷﻃﺮ أﺳﺎﺳﯿﺎت اﻷﻃﺮ ﻓﻲ ﻫﺬا اﻟﺪرس ﺳﻮف ﻧﻘﻮم ﺑﺎﻟﺘﻌﺮف ﻋﻠﻰ اﻹﻃﺎرات Framesوﻃﺮﯾﻘﺔ ﻋﺮض ﺻﻔﺤﺎت اﻟﻮﯾﺐ ﺑﺎﺳﺘﺨﺪاﻣﻬﺎ ﻓﻬﺮس اﻟﺼﻔﺤﺔ ] اﻹﻃﺎرات | [ NOFRAMES | ROWS | COLS | FRAMESET اﻹﻃﺎرات ﻓﻬﻞ ﺗﻌﺮف ﻣﺎ ﻫﻲ اﻹﻃﺎرات؟ ﺣﺴﻨﺎ ،ﺳﺄوﺿﺤﻬﺎ ﻟﻚ… ﻫﻞ ﺳﺒﻖ ﻟﻚ وأن زرت إﺣﺪى اﻟﺼﻔﺤﺎت ﻟﺘﺸﺎﻫﺪ أﻧﻬﺎ ﻣﻘﺴﻤﺔ إﻟﻰ ﻋﺪة أﻗﺴﺎم ﺑﺤﯿﺚ ﯾﻈﻬﺮ ﻓﻲ ﻛﻞ ﻣﻨﻬﺎ ﺻﻔﺤﺔ ﻣﺴﺘﻘﻠﺔ ،وﺗﺒﺪو ﺑﺼﻮرة ﻣﻨﻔﺼﻠﺔ ﻋﻦ اﻷﻗﺴﺎم اﻷﺧﺮى.ورﺑﻤﺎ ﺗﻜﻮن ﻗﺪ ﻗﻤﺖ ﺑﺎﻟﻨﻘﺮ ﻋﻠﻰ إﺣﺪى اﻟﻮﺻﻼت اﻟﺘﺸﻌﺒﯿﺔ اﻟﻤﻮﺟﻮدة ﻓﻲ أﺣﺪ اﻷﻗﺴﺎم ﻟﺘﻈﻬﺮ اﻟﺼﻔﺤﺔ اﻟﻤﺘﻌﻠﻘﺔ ﺑﻬﺎ ﻓﻲ اﻟﻘﺴﻢ اﻵﺧﺮ.إذا ﻛﻨﺖ ﻗﺪ ﺷﺎﻫﺪت ﻣﺜﻞ ﻫﺬه اﻟﺼﻔﺤﺎت ﻓﻬﺬا ﯾﻌﻨﻲ أن اﻹﻃﺎرات ﻣﺄﻟﻮﻓﺔ ﻟﺪﯾﻚ وإﻻ ﻗﻢ ﺑﺎﻟﻨﻘﺮ ﻫﻨﺎ ﻟﺘﺸﺎﻫﺪ ﻣﺜﺎ ًﻻ ﻋﻠﻰ ﺻﻔﺤﺔ ذات إﻃﺎرات )وﻻ ﺗﻨﺴﻰ اﻟﻌﻮدة ﻟﻜﻲ ﺗﺘﺎﺑﻊ اﻟﺪرس ﻣﻌﺎ(. ﻛﻤﺎ ﺷﺎﻫﺪت ،ﻓﺈن اﻟﺼﻔﺤﺔ ﻣﻜﻮﻧﺔ ﻣﻦ ﺛﻼﺛﺔ أﻗﺴﺎم :ﻋﻠﻮي وأﯾﺴﺮ وأﯾﻤﻦ… واﻟﺤﻘﯿﻘﺔ أن ﻛﻞ ﻗﺴﻢ ﻣﻨﻬﺎ ﻫﻮ ﻋﺒﺎرة ﻋﻦ ﻣﻠﻒ Htmlﻛﺎﻣﻞ وﻣﺴﺘﻘﻞ ﺑﺤﺪ ذاﺗﻪ .وﻫﻲ ﻣﺠﺮد ﺻﻔﺤﺎت ﻋﺎدﯾﺔ ﻻ ﺗﺨﺘﻠﻒ أﺑﺪاً ﻋﻦ ﺗﻠﻚ اﻟﺘﻲ ﺗﻌﻠﻤﺖ إﻧﺸﺎءﻫﺎ ﻓﻲ اﻟﺪروس اﻟﺴﺎﺑﻘﺔ ،وﻻ ﻋﻼﻗﺔ ﻟﻜﻞ ﻣﻨﻬﺎ ﺑﺎﻟﺼﻔﺤﺎت اﻷﺧﺮى ﻣﻦ ﺣﯿﺚ اﻟﺘﺮﻛﯿﺐ واﻟﺘﻌﺮﯾﻒ. أﻣﺎ ﻛﯿﻒ ﺗﻢ ﺟﻤﻌﻬﺎ ﻣﻌﺎ ﻟﺘﻈﻬﺮ ﺑﺎﻟﺸﻜﻞ اﻟﺬي ﺷﺎﻫﺪﺗﻪ؟ ﻓﻬﻨﺎ ﺑﯿﺖ اﻟﻘﺼﯿﺪ .ﻓﺒﺎﻹﺿﺎﻓﺔ إﻟﻰ اﻟﺼﻔﺤﺎت واﻟﻤﻠﻔﺎتاﻹﻋﺘﯿﺎدﯾﺔ ﯾﻮﺟﺪ داﺋﻤًﺎ ﻣﻠﻒ أﺳﺎﺳﻲ ﯾﺘﻢ إﻧﺸﺎؤه ﺧﺼﯿﺼﺎ ﻟﺘﻌﺮﯾﻒ ﺻﻔﺤﺔ اﻹﻃﺎرات وﺗﺠﻤﯿﻌﻬﺎ وﺗﺤﺪﯾﺪ ﺧﺼﺎﺋﺼﻬﺎ. أي أن اﻟﻤﻌﺎدﻟﺔ ﺗﺘﻠﺨﺺ ﺑِـ: ﻫﺎم ﺟﺪاﻣﻜﻮﻧﺎت ﺻﻔﺤﺔ اﻹﻃﺎرات = ﻋﺪد ﻣﻠﻔﺎت اﻟﺼﻔﺤﺔ ﻧﻔﺴﻬﺎ +ﺻﻔﺤﺔ اﻟﻤﻠﻒ اﻷﺳﺎﺳﻲ اﻟﺬي ﯾﺠﻤﻌﻬﺎ أي أﻧﻨﻲ ﻓﻲ اﻟﻤﺜﺎل اﻟﺴﺎﺑﻖ إﺣﺘﺠﺖ ﻓﻌﻠﯿﺎً إﻟﻰ أرﺑﻌﺔ ﻣﻠﻔﺎت ﻟﺘﻜﻮﯾﻦ اﻟﺼﻔﺤﺔ . FRAMESET وﻗﺒﻞ أن ﻧﺒﺪأ… ﻟﻨﻘﻢ ﺑﺎﻟﺘﺤﻀﯿﺮ ﻟﻸﻣﺜﻠﺔ اﻟﺘﻲ ﺳﺘﺮد ﻓﻲ ﻫﺬا اﻟﺪرس .ﻟﺬﻟﻚ ﻗﻢ ﺑﺈﻧﺸﺎء ﺛﻼﺛﺔ أو أرﺑﻌﺔ ﻣﻠﻔﺎت ﺑﺴﯿﻄﺔ ﻟﻜﻲ ﺗﺴﺘﺨﺪﻣﻬﺎ ﻓﻲ ﺗﻄﺒﯿﻖ اﻷﻣﺜﻠﺔ أو اﺳﺘﺨﺪم ﻣﻠﻔﺎﺗﻚ اﻟﻘﺪﯾﻤﺔ اﻟﺘﻲ ﻗﻤﺖ ﺑﺎﻟﺘﺪرب ﻋﻠﯿﻬﺎ ﻓﻲ اﻟﺪروس اﻟﺴﺎﺑﻘﺔ .أﻧﺎ ﻗﻤﺖ ﺑﺈﻧﺸﺎء ﻣﻠﻔﺎت ﻋﻠﻰ اﻟﻨﻤﻂ اﻟﺘﺎﻟﻲ )وﻫﻲ اﻟﺘﻲ اﺳﺘﺨﺪﻣﺘﻬﺎ ﻓﻲ اﻟﻤﺜﺎل( وأﺳﻤﯿﺘﻬﺎ Contents.htm , Banner.htm, MasterFrame.htm وﻧﺒﺪأ اﻵن ﺑﺘﻌﺮﯾﻒ اﻟﻤﻠﻒ اﻟﺮﺋﯿﺴﻲ اﻟﺬي ﺳﯿﻀﻢ ﻛﺎﻓﺔ اﻹﻃﺎرات واﻟﻤﻠﻔﺎت .وﻫﻮ ﺑﺎﻟﻤﻨﺎﺳﺒﺔ ﻣﻠﻒ ذو ﺣﺎﻟﺔ ﺧﺎﺻﺔ ﺣﯿﺚ ﻧﻘﻮم ﺑﺎﺳﺘﺨﺪام اﻟﻮﺳﻮم><FRAMESET> ... </FRAMESET ﺑﺪﻻً ﻣﻦ اﻟﻮﺳﻮم ><BODY> ... </BODY إذن اﻟﻤﻠﻒ اﻟﺮﺋﯿﺴﻲ ﻟﻺﻃﺎرات ﻻ ﯾﺘﻀﻤﻦ ﺗﻌﺮﯾﻔﺎ ﺑﺎﺳﺘﺨﺪام BODY
><HTML><HEAD><TITLE>Master Frame</TITLE></HEAD ><FRAMESET></FRAMESET ></HTML ﻧﺄﺗﻲ اﻵن إﻟﻰ اﻟﺨﺼﺎﺋﺺ : COLS واﻟﺨﺎﺻﯿﺔ اﻷوﻟﻰ اﻟﺘﻲ ﺗﺴﺘﺨﺪم ﻣﻊ ﻫﺬه اﻟﻮﺳﻮم ﻫﻲ COLSوﻫﻲ ﺗﻌ ّﺮف ﻋﺪد وأﺣﺠﺎم اﻹﻃﺎرات اﻟﻌﻤﻮدﯾﺔ ﻟﻠﺼﻔﺤﺔ .وُﺗﺤﺪد اﻷﺣﺠﺎم ﺑﻄﺮﯾﻘﺘﯿﻦ )ﻫﻞ ﻋﺮﻓﺘﻬﻤﺎ؟ )ﻧﻌﻢ… إﻧﻬﻤﺎ اﻟﻄﺮﯾﻘﺔ اﻟﻤﺒﺎﺷﺮة )ﺑﺎﻟﺒﯿﻜﺴﻞ( واﻟﻄﺮﯾﻘﺔ اﻟﻨﺴﺒﯿﺔ...أو ﻛﻼﻫﻤﺎ ﻣﻌﺎ .ﻟﻜﻦ إﻧﺘﺒﻪ! ﻓﻬﺬه اﻟﺸﯿﻔﺮة ﻏﯿﺮ ﻣﻜﺘﻤﻠﺔ وﻛﺘﺎﺑﺘﻬﺎ ﺑﻬﺬا اﻟﺸﻜﻞ ﻓﻘﻂ ﻟﻦ ﯾﺆدي إﻟﻰ أي ﻧﺘﯿﺠﺔ وﻻ إﻟﻰ ﻇﻬﻮر أي إﻃﺎرات ﺣﯿﺚ ﯾﻨﻘﺼﻬﺎ وﺳﻮم أﺧﺮى ﺧﺎﺻﺔ ﺑﻤﺼﺪر اﻟﻤﻠﻔﺎت اﻟﻈﺎﻫﺮة داﺧﻞ اﻹﻃﺎرات واﻵن إﻟﯿﻚ ﻫﺬه اﻷﻣﺜﻠﺔ اﻟﺘﻲ ﺗﻮﺿﺢ ﻣﻔﻬﻮم اﻷﻋﻤﺪةﯾﺤﺪد إﻃﺎرﯾﻦ ﻋﻤﻮدﯾﯿﻦ ﺣﺠﻢ ﻛﻞ ﻣﻨﻬﻤﺎ %٥٠ﻣﻦ <FRAMESET ﺣﺠﻢ اﻟﺸﺎﺷﺔ >\"COLS=\"50%,50% ></FRAMESET <FRAMESETﯾﺤﺪد ﺛﻼﺛﺔ إﻃﺎرات أﺣﺠﺎﻣﻬﺎ %٢٠و %٥٠و >\"COLS=\"20%,50%,30% %٣٠ﻋﻠﻰ اﻟﺘﻮاﻟﻲ ﻣﻦ ﺣﺠﻢ اﻟﺸﺎﺷﺔ ></FRAMESET ﯾﺤﺪد ﺛﻼﺛﺔ إﻃﺎرات ﻋﻤﻮدﯾﺔ اﻷول ﺣﺠﻤﻪ ٢٠٠ <FRAMESET >\"*COLS=\"200,300,ﺑﯿﻜﺴﻞ ،واﻟﺜﺎﻧﻲ ٣٠٠ﺑﯿﻜﺴﻞ ،أﻣﺎ اﻟﺜﺎﻟﺚ * أي اﻧﻪ ></FRAMESET ﻏﯿﺮ ﻣﺤﺪد ﺑﺤﺠﻢ ﻣﻌﯿﻦ وﻟﻜﻨﻪ ﺳﯿﻜﻮن ﺑﺎﻟﺤﺠﻢ اﻟﻤﺘﺒﻘﻲ ﻣﻦ اﻟﺸﺎﺷﺔ )ﻃﺎﻟﻤﺎ أﻧﻨﺎ ﻻ ﻧﻌﺮف اﺳﺘﺒﺎﻧﺔ اﻟﺸﺎﺷﺔ اﻟﺘﻲ ﯾﺴﺘﺨﺪﻣﻬﺎ زاﺋﺮ اﻟﻤﻮﻗﻊ(ﯾﺤﺪد أرﺑﻌﺔ إﻃﺎرات ﺣﺠﻢ اﻷول ﻫﻮ ٢٠٠ﺑﯿﻜﺴﻞ، <FRAMESET واﻟﺜﺎﻟﺚ %١٥ﻣﻦ ﺣﺠﻢ اﻟﺸﺎﺷﺔ ،واﻟﺮاﺑﻊ %٢٠ >\"COLS=\"200,*,15%,20% ></FRAMESET ﻣﻦ ﺣﺠﻢ اﻟﺸﺎﺷﺔ أﻣﺎ اﻟﺜﺎﻧﻲ ﻓﺴﯿﻜﻮن ﺣﺠﻤﻪ ﺑﻤﺎ ﺗﺒﻘﻰ ﻣﻦ اﻟﺸﺎﺷﺔ.ﯾﺤﺪد ﺛﻼﺛﺔ إﻃﺎرات اﻷول ﺣﺠﻤﻪ ١٥٠ﺑﯿﻜﺴﻞ.... <FRAMESET أﻣﺎ اﻟﻤﺴﺎﺣﺔ اﻟﻤﺘﺒﻘﯿﺔ ﻓﺘﻘﺴﻢ ﻋﻠﻰ أﺳﺎس أن اﻹﻃﺎر >\"*COLS=\"150,*,2اﻟﺜﺎﻟﺚ ﺣﺠﻤﻪ ﻫﻮ ﺿﻌﻔﻲ )* (٢ﺣﺠﻢ اﻹﻃﺎر اﻟﺜﺎﻧﻲ ></FRAMESET )*( و إﻟﯿﻚ ﻫﺬا اﻟﻤﺜﺎل ﻋﻠﻲ اﻹﻓﺘﺮاض اﻷﺧﯿﺮ ROWS أﻣﺎ اﻟﺨﺎﺻﯿﺔ اﻟﺜﺎﻧﯿﺔ ﻓﻬﻲ ROWSوأﻋﺘﻘﺪ أﻧﻚ اﺳﺘﻨﺠﺖ ﻃﺒﯿﻌﺔ ﻋﻤﻠﻬﺎ .ﻧﻌﻢ ﻫﻲ ﺗﺤﺪد ﻋﺪد وﺣﺠﻢ اﻹﻃﺎراتاﻷﻓﻘﯿﺔ )اﻟﺼﻔﻮف( داﺧﻞ اﻟﺼﻔﺤﺔ .وذﻟﻚ ﺑﻨﻔﺲ اﻷﺳﻠﻮب اﻟﻤﺘﺒﻊ ﻣﻊ اﻷﻋﻤﺪة ،أي إﻣﺎ ﺑﺎﺳﺘﺨﺪام اﻟﻄﺮﯾﻘﺔ اﻟﻨﺴﺒﯿﺔ أو اﻟﻤﻄﻠﻘﺔ) .وأذﻛﺮك ﺛﺎﻧﯿﺔ أن ﻫﺬه اﻷوﺳﻤﻪ ﻏﯿﺮ ﻣﻜﺘﻤﻠﺔ(
<FRAMESET ﯾﺤﺪد إﻃﺎرﯾﻦ أﻓﻘﯿﯿﻦ ارﺗﻔﺎع ﻛﻞ ﻣﻨﻬﻤﺎ %٥٠ﻣﻦ>\"ROWS=\"50%,50% ارﺗﻔﺎع اﻟﺸﺎﺷﺔ></FRAMESET<FRAMESET ﯾﺤﺪد ﺛﻼﺛﺔ إﻃﺎرات أﻓﻘﯿﺔ ارﺗﻔﺎﻋﺎﺗﻬﺎ %٢٠و>\"ROWS=\"20%,50%,30% %٥٠و %٣٠ﻋﻠﻰ اﻟﺘﻮاﻟﻲ ﻣﻦ ارﺗﻔﺎع اﻟﺸﺎﺷﺔ></FRAMESET<FRAMESET ﯾﺤﺪد ﺛﻼﺛﺔ إﻃﺎرات أﻓﻘﯿﺔ اﻷول ارﺗﻔﺎﻋﻪ ٥٠>\"*ROWS=\"50,120, ﺑﯿﻜﺴﻞ ،واﻟﺜﺎﻧﻲ ١٢٠ﺑﯿﻜﺴﻞ ،واﻟﺜﺎﻟﺚ ﺳﯿﻜﻮن></FRAMESET ﺑﺎﻹرﺗﻔﺎع اﻟﻤﺘﺒﻘﻲ ﻣﻦ اﻟﺸﺎﺷﺔ<FRAMESET>\"ROWS=\"50,*,15%,20% ﯾﺤﺪد أرﺑﻌﺔ إﻃﺎرات أﻓﻘﯿﺔ ارﺗﻔﺎع اﻷول ﻫﻮ ٥٠></FRAMESET ﺑﯿﻜﺴﻞ ،واﻟﺜﺎﻟﺚ %١٥ﻣﻦ ارﺗﻔﺎع اﻟﺸﺎﺷﺔ ،واﻟﺮاﺑﻊ %٢٠ﻣﻦ ارﺗﻔﺎع اﻟﺸﺎﺷﺔ أﻣﺎ اﻟﺜﺎﻧﻲ ﻓﺴﯿﻜﻮن ارﺗﻔﺎﻋﻪ ﺑﻤﺎ ﺗﺒﻘﻰ ﻣﻦ ارﺗﻔﺎع اﻟﺸﺎﺷﺔ.>\"*<FRAMESET ROWS=\"*,2 ﯾﺤﺪد إﻃﺎرﯾﻦ اﻟﺜﺎﻧﻲ ارﺗﻔﺎﻋﻪ ﺿﻌﻔﻲ ارﺗﻔﺎع اﻷول></FRAMESET و إﻟﯿﻚ ﻫﺬا اﻟﻤﺜﺎل ﻋﻠﻲ اﻹﻓﺘﺮاض اﻷﺧﯿﺮ ﻟﻢ ﻧﻨﺘﻪ ﺑﻌﺪ ﻣﻦ ذﻛﺮ ﻛﻞ اﻟﺨﺼﺎﺋﺺ اﻟﻤﺘﻌﻠﻘﺔ ﺑﺎﻟﻮﺳﻮم > <FRAMESETﻓﻼ زال ﻫﻨﺎك اﻟﻜﺜﯿﺮ .وﻟﻜﻦ ﻣﻦ اﻟﻀﺮوري أن ﻧﻘﻮم اﻵن ﺑﺎﻹﻧﺘﻘﺎل إﻟﻰ وﺳﻢ آﺧﺮ ﻟﻺﻃﺎرات ﻷﻧﻪ ﻣﺮﺗﺒﻂ إرﺗﺒﺎﻃﺎً وﺛﯿﻘﺎً ﺑﺎﻟﻮﺳﻮم اﻟﺴﺎﺑﻘﺔ وﺧﺼﺎﺋﺼﻬﺎ اﻟﻤﺬﻛﻮرة أﻋﻼه ،وﻫﻲ > <FRAMEﻓﻤﺎ ﻫﻮ ﻋﻤﻞ ﻫﺬا اﻟﻮﺳﻢ؟ﺣﺴﻨﺎ ،ﻛﻞ ﻣﺎ ﻗﻤﻨﺎ ﺑﻪ ﺣﺘﻰ اﻵن ﻫﻮ ﺗﻌﺮﯾﻒ ﻣﺠﻤﻮﻋﺔ ﻣﻦ اﻹﻃﺎرات وﺧﺼﺎﺋﺼﻬﺎ )ﻓﻘﻂ ﺗﻌﺮﯾﻒ اﻹﻃﺎرات( ﻟﻜﻦ ﻟﻢ ﻧﺤﺪد ﻣﺎﻫﯿﺔ ﻫﺬه اﻹﻃﺎرات وﻻ ﻣﺤﺘﻮﯾﺎﺗﻬﺎ وﻻ ﻣﺼﺎدرﻫﺎ .ﺗﻤﺎﻣﺎ ﻛﻤﺎ ﻧﻘﻮم ﺑﺘﻌﺮﯾﻒ ﺻﻔﺤﺎت اﻟﻮﯾﺐ اﻹﻋﺘﯿﺎدﯾﺔوﺧﺼﺎﺋﺼﻬﺎ ﻓﻲ اﻟﻮﺳﻢ > <BODYدون أن ﯾﻌﻨﻲ ذﻟﻚ ﺗﺤﺪﯾﺪ ﻣﺤﺘﻮﯾﺎت ﻫﺬه اﻟﺼﻔﺤﺎت .ﻓﺈذا أردﻧﺎ ﻓﯿﻤﺎ ﺑﻌﺪ إدراج ﺻﻮرة ﻣﺜ ًﻼ ﻧﺴﺘﺨﺪم اﻟﻮﺳﻢ اﻟﺨﺎص ﺑﺬﻟﻚ وﻫﻮ>\"أﺳﻢ اﻟﺼﻮرة\"=<IMG SRC وﻓﻲ ﺣﺎﻟﺔ اﻹﻃﺎرات ﻓﺈﻧﻨﺎ ﻧﺴﺘﺨﺪم اﻟﻮﺳﻢ > <FRAMEوﻫﻮ وﺳﻢ ﻣﻔﺮد أي ﻟﯿﺲ ﻟﻪ وﺳﻢ ﻧﻬﺎﯾﺔ ﺗﻤﺎﻣﺎً ﻣﺜﻞ > .<IMGوﻓﯿﻪ ﻧﻘﻮم ﺑﺘﺤﺪﯾﺪ ﻣﺼﺪر وﺧﺼﺎﺋﺺ ﻛﻞ ﻣﻠﻒ ﻧﺮﯾﺪ إﻇﻬﺎره داﺧﻞ أﺣﺪ اﻹﻃﺎرات .وﯾﺘﻢ اﺳﺘﺨﺪام ﻫﺬااﻟﻮﺳﻢ ﻣﺮات ﺑﻨﻔﺲ ﻋﺪد اﻹﻃﺎرات اﻟﻤﺬﻛﻮرة داﺧﻞ > .<FRAMESETوﺳﻮف أﻗﻮم ﻣﺒﺎﺷﺮة ﺑﺎﺳﺘﺨﺪام اﻟﺨﺎﺻﯿﺔ SRCﻟﺘﺤﺪﯾﺪ ﻣﺼﺪر اﻟﻤﻠﻒ. دﻋﻨﺎ ﻧﻘﻮم اﻵن ﺑﺈﺗﻤﺎم اﻟﺸﯿﻔﺮة ﻟﺒﻌﺾ اﻷﻣﺜﻠﺔ اﻟﻤﺬﻛﻮرة أﻋﻼه .وﻧﺒﺪأ ﺑﺎﻟﻤﺜﺎل اﻷول:>\"<FRAMESET COLS=\"50%,50% >\"<FRAME SRC=\"frame1.html >\"<FRAME SRC=\"frame2.html></FRAMESET اﻵن ...واﻵن ﻓﻘﻂ أﺻﺒﺢ ﻟﺪﯾﻚ ﺻﻔﺤﺔ إﻃﺎرات ﻣﺤﺘﺮﻣﺔ. ﻣﺜﺎل آﺧﺮ:
>\"<FRAMESET ROWS=\"50,*,15%,20% >\"<FRAME SRC=\"frame1.html >\"<FRAME SRC=\"frame2.html >\"<FRAME SRC=\"frame3.html >\"<FRAME SRC=\"frame4.html></FRAMESETوﺑﺎﻹﺿﺎﻓﺔ إﻟﻰ ﻣﺎ ذﻛﺮ ،ﻧﺴﺘﻄﯿﻊ إدراج ﺻﻮرة ﻣﺒﺎﺷﺮًة داﺧﻞ اﻹﻃﺎر وﺑﺎﺳﺘﺨﺪام > <FRAME SRCﺗﻤﺎﻣﺎً ﻛﻤﺎ ﻧﺪرﺟﻬﺎ ﺑﺎﺳﺘﺨﺪام > <IMG SRCوإﻟﯿﻚ ﻫﺬا اﻟﻤﺜﺎل:>\"<FRAMESET COLS=\"50%,50% >\"<FRAME SRC=\"frame1.html >\"<FRAME SRC=\"thedome.jpg></FRAMESET ﻫﻞ ﺗﺄﻛﺪت ﻣﻦ ﻓﻬﻤﻚ ﻟﻬﺬه اﻟﻨﻘﺎط؟ ﻟﻨﺘﺎﺑﻊ إذن ... ﺣﺘﻰ اﻵن ﻗﻤﻨﺎ ﺑﺘﻘﺴﯿﻢ اﻟﺼﻔﺤﺔ إﻣﺎ ﻹﻃﺎرات أﻓﻘﯿﺔ أو ﻹﻃﺎرات ﻋﻤﻮدﯾﺔ .ﻟﻜﻦ ﻧﺤﺘﺎج ﻟﻤﻌﺮﻓﺔ ﻛﯿﻔﯿﺔ إدراج ﻛﻼﻫﻤﺎ ﻓﻲ اﻟﺼﻔﺤﺔ .ﻛﻤﺎ ﻓﻲ ﻫﺬه اﻟﺼﻔﺤﻪ ﻟﻨﺒﺪأ ﺻﻔﺤﺔ ﻣﻜﻮﻧﺔ ﻣﻦ ﺻﻔﯿﻦ ،اﻟﺜﺎﻧﻲ ﻣﻨﻬﻤﺎ ﻣﻘﺴﻢ ﺑﺪوره إﻟﻰ ﻋﻤﻮدﯾﻦ ﺑﻤﺎ أن اﻟﺼﻔﺤﺔ ﺗﺤﺘﻮي ﻋﻠﻰ ﺻﻔﯿﻦ ﻧﻘﻮم ﺑﺘﻌﺮﯾﻔﻬﻤﺎ أوﻻً ﺣﺴﺐ اﻹرﺗﻔﺎﻋﺎت اﻟﻤﺮﻏﻮب ﺑﻬﺎ:>\"*<FRAMESET ROWS=\"100, >\"<FRAME SRC=\"Contents.htm >\"<FRAME SRC=\"index.htm></FRAMESET ﻟﻜﻦ اﻟﺼﻒ اﻟﺜﺎﻧﻲ ﻣﻘﺴﻢ إﻟﻰ ﻋﻤﻮدﯾﻦ وﻫﻨﺎ ﯾﻌﺘﺒﺮ ﺑﻤﻔﻬﻮم ﻟﻐﺔ HTMLوﻛﺄﻧﻪ ﺻﻔﺤﺔ إﻃﺎرات ﺟﺪﯾﺪة ﻟﺬﻟﻚ ﻻ ﻧﺤﺘﺎج ﻟﺘﻌﺮﯾﻔﻪ ﻛﺼﻒ وﺑﺪﻻً ﻣﻦ ذﻟﻚ ﻧﻌﺎود اﺳﺘﺨﺪام ﺗﻌﺮﯾﻒ اﻟﺼﻔﺤﺎت! أي > <FRAMESETﻣﺮة أﺧﺮى.>\"*<FRAMESET ROWS=\"100, >\"<FRAME SRC=\"Contents.htm ><FRAMESET ></FRAMESET ></FRAMESET وﺑﻤﺎ أن اﻟﺼﻒ اﻟﺜﺎﻧﻲ )أو ﻟﻨﻘﻞ اﻹﻃﺎر اﻟﺜﺎﻧﻲ( ﻣﻘﺴﻢ إﻟﻰ ﻋﻤﻮدﯾﻦ ،إذن ﺑﻘﻲ ﻋﻠﯿﻨﺎ إﺿﺎﻓﺔ ﺗﻌﺮﯾﻒ ﻟﻬﺬه اﻷﻋﻤﺪة. وﺑﺬﻟﻚ ﺗﻜﻮن اﻟﺸﯿﻔﺮة اﻟﻨﻬﺎﺋﯿﺔ ﻛﺎﻟﺘﺎﻟﻲ:>\"*<FRAMESET ROWS=\"100, >\"<FRAME SRC=\"Contents.htm >\"*<FRAMESET COLS=\"200, >\"<FRAME SRC=\"index.htm >\"<FRAME SRC=\"Banner.htm ></FRAMESET ></FRAMESET ﻟﻤﺸﺎﻫﺪة اﻟﺼﻔﺤﺔ أﺿﻐﻂ ﻫﻨﺎ NOFRAMES
ﻧﺄﺗﻲ إﻟﻲ آﺧﺮ وﺳﻢ ﻓﻲ ﻫﺬه اﻟﺼﻔﺤﺔ وﻫﻮ > <NOFRAMESو ﻫﻮ اﻟﻮﺳﻢ اﻟﺨﺎص ﺑﺎﻟﻤﺴﺘﻌﺮﺿﺎت اﻟﺘﻲ ﻻ ﺗﺴﺘﺨﺪم اﻷﻃﺮ ﻣﺜﻞ اﻹﺻﺪارات اﻟﻘﺪﯾﻤﺔ ﻟِـ MS Internet, Netscapeﻟﻜﻨﻚ ﺣﺘﻤﺎً ﺗﺴﺘﻄﯿﻊ ﻣﺸﺎﻫﺪﺗﻬﺎ وذﻟﻚ ﻷن اﻹﺻﺪارات اﻟﻤﻌﺮﺑﺔ ﻣﻦ ﻫﺬه اﻟﻤﺘﺼﻔﺤﺎت ﻫﻲ إﺻﺪارات ﺣﺪﯾﺜﺔ ﻧﺴﺒﯿًﺎ وﺗﺪﻋﻢ اﻹﻃﺎرات . ﻓﺈذا أردت أن ﺗﻤﻨﺢ زوار ﻣﻮﻗﻌﻚ اﻟﺬﯾﻦ ﻻ ﯾﺴﺘﺨﺪﻣﻮن ﻣﺘﺼﻔﺤﺎً ﺣﺪﯾﺜﺎً ﻓﺮﺻﺔ ﻣﺸﺎﻫﺪة ﻣﻮﻗﻌﻚ ،ﻓﻜﻞ ﻣﺎ ﻋﻠﯿﻚ ﻓﻌﻠﻪﻫﻮ إدراج ﻫﺬا اﻟﻮﺳﻢ ﻓﻲ ﻧﻬﺎﯾﺔ اﻟﻤﻠﻒ اﻟﺮﺋﯿﺴﻲ ﻟﻺﻃﺎرات واﻟﺒﺪء ﺑﻜﺘﺎﺑﺔ ﺻﻔﺤﺘﻚ ﻛﻤﺎ ﻟﻮ ﻛﺎﻧﺖ ﺻﻔﺤﺔ وﯾﺐ ﻋﺎدﯾﺔ.><NOFRAMES ﻫﺬه اﻟﺼﻔﺤﺔ ﺗﺴﺘﺨﺪم اﻷﻃﺮ><BODY :-ﺗﺴﺘﻄﯿﻊ ان ﺗﻜﺘﺐ ﻫﻨﺎ ﻣﺎ ﳛﻠﻮ ﻟﻚ ﻣﺜﻞﯾﺪﻋﻤﻬﺎ ﻣﺴﺘﻌﺮﺿﻚ ﻻ و></BODY></NOFRAMESاﻟﺪرس اﻟﺘﺎﻟﻲ«««اﻷﻃﺮ اﻟﻤﺘﻘﺪﻣﺔﺗﻮﻗﻔﻨﺎ ﻓﻲ «اﻟﻔﺼﻞ اﻟﺴﺎﺑﻖ ﻋﻨﺪ ﻛﯿﻔﯿﺔ إﻧﺸﺎء ﺻﻔﺤﺔ وﯾﺐ ﺑﺎﺳﺘﺨﺪام ﻣﺒﺪأ اﻹﻃﺎرات .وﻧﺘﺎﺑﻊ ﻣﻌًﺎ اﻟﺘﻌﺮف ﻋﻠﻰ ﺑﺎﻗﻲ اﻟﺨﺼﺎﺋﺺ واﻟﺘﺤﺪﯾﺪات اﻟﻤﺘﻌﻠﻘﺔ ﺑﻬﺎ. ﻓﻬﺮس اﻟﺼﻔﺤﺔ ] [ in-line frames | FRAMEBORDERﻋﻨﺪ اﻟﺤﺪﯾﺚ ﻋﻦ اﻹﻃﺎرات ﺳﻮف ﻧﻮاﺟﻪ ﺗﻠﻚ اﻟﻤﺸﻜﻠﺔ اﻟﻌﺘﯿﺪة اﻟﺘﻲ ﺗﺆرق داﺋﻤًﺎ ﻣﺼﻤﻤﻲ ﺻﻔﺤﺎت اﻟﻮﯾﺐ ،أﻻ وﻫﻲﻣﺴﺄﻟﺔ ﺗﻮاﻓﻖ اﻟﻮﺳﻮم واﻟﺨﺼﺎﺋﺺ ﻣﻊ اﻟﻤﺘﺼﻔﺤﺎت اﻟﻤﺨﺘﻠﻔﺔ ،ﻓﻤﺜﻼً ﻟﺪﯾﻨﺎ أرﺑﻊ ﺧﺼﺎﺋﺺ ﻟﻠﻮﺳﻢ ><FRAMESET ،ﻟﻜﻦ واﺣﺪة ﻣﻨﻬﺎ ﻓﻘﻂ ﺗﻌﻤﻞ ﻣﻊ ﻛﻼ اﻟﻤﺘﺼﻔﺤﯿﻦ اﻟﺮﺋﯿﺴﯿﯿﻦ MS Internet , Netscape Navigator. Explorerوﻛﻤﺎ إﻋﺘﺪﻧﺎ ﻟﻦ أرﻛﺰ ﻋﻠﻰ ﻫﺬه اﻟﺨﺼﺎﺋﺺ ،ﻟﻜﻦ ﻋﻠﻰ اﻷﻗﻞ ﺳﺄﻛﺘﻔﻲ ﺑﺬﻛﺮﻫﺎ وذﻛﺮ ﻋﻤﻠﻬﺎ وأﺗﺮك ﻟﻚ ﺣﺮﯾﺔ ﺗﺠﺮﺑﺘﻬﺎ إن أردت . FRAMEBORDER أوﻟﻰ ﻫﺬه اﻟﺨﺼﺎﺋﺺ ﻫﻲ FRAMEBORDERوﻫﻲ ﺗﻘﻮم ﺑﺘﺤﺪﯾﺪ ﻇﻬﻮر أو ﻋﺪم ﻇﻬﻮر اﻟﺤﺪود ﺣﻮل اﻹﻃﺎرات وﺗﺄﺧﺬ اﻟﻘﯿﻢ ١ﻟﻠﻈﻬﻮر ،و ٠ﻟﻌﺪم اﻟﻈﻬﻮر .وﻫﺬا ﻣﺜﺎل ﻋﻠﯿﻬﺎ:>\"<FRAMESET ROWS=\"50,*\" FRAMEBORDER=\"0 >\"<FRAME SRC=\"frame1.html >\"<FRAME SRC=\"frame2.html ></FRAMESET أﻣﺎ اﻟﺨﺼﺎﺋﺺ اﻟﺜﻼث اﻷﺧﺮى ﻓﻬﻲ:
• :BORDERﺗﺤﺪد ﺳﻤﻚ اﻟﺤﺪود اﻟﻈﺎﻫﺮة ﺣﻮل اﻹﻃﺎرات وﻫﻲ ﺗﺄﺧﺬ ﻗﯿﻤﺎً ﺑﺎﻟﺒﯿﻜﺴﻞ. )\" (BORDER=\"nوﺗﻌﻤﻞ ﻓﻘﻂ ﻣﻊ Netscape• :BORDERCOLORﻹﺿﺎﻓﺔ ﻟﻮن ﻟﻠﺤﺪود )\" (BORDERCOLOR=\"rrggbbﺑﺎﻟﻄﺒﻊ ﺗﺴﺘﻄﯿﻊ ان ﺗﺨﺘﺎر أﺳﻤﺎء اﻷﻟﻮان أو ﻛﻮد ال HEXوﺗﻌﻤﻞ ﻣﻊ Netscapeأﯾﻀًﺎ. • :FRAMESPACINGﻟﺘﺤﺪﯾﺪ ﻣﺴﺎﻓﺎت ﻓﺎرﻏﺔ إﺿﺎﻓﯿﺔ ﺣﻮل اﻹﻃﺎرات وﺗﺄﺧﺬ ﻗﯿﻤًﺎ ﺑﺎﻟﺒﯿﻜﺴﻞ )\" (FRAMESPACING=\"nوﻫﻲ ﺗﻌﻤﻞ ﻣﻊ MS Internet أﻣﺎ اﻟﺨﺼﺎﺋﺺ اﻟﻤﺴﺘﺨﺪﻣﺔ ﻣﻊ اﻟﻮﺳﻢ > <FRAMEﻓﻬﻲ ﻛﺎﻟﺘﺎﻟﻲ: :MARGINHEIGHTﺗﺤﺪد ﻣﻘﺪار اﻟﻤﺴﺎﻓﺔ اﻟﻔﺎرﻏﺔ اﻟﻤﺘﺮوﻛﺔ ﻟﻠﻬﻮاﻣﺶ اﻟﻌﻠﻮﯾﺔ واﻟﺴﻔﻠﯿﺔ ﻟﻺﻃﺎر • • )ﺑﺎﻟﺒﯿﻜﺴﻞ(MARGINHEIGHT=\"n\" . • :MARGINWIDTHﺗﺤﺪد ﻣﻘﺪار اﻟﻤﺴﺎﻓﺔ اﻟﻔﺎرﻏﺔ اﻟﻤﺘﺮوﻛﺔ ﻟﻠﻬﻮاﻣﺶ اﻟﯿﻤﻨﻰ واﻟﯿﺴﺮى ﻟﻺﻃﺎر )ﺑﺎﻟﺒﯿﻜﺴﻞ(MARGINWIDTH=\"n\" .SCROLLING:ﺗﺤﺪد إﻣﻜﺎﻧﯿﺔ ﻇﻬﻮر أو ﻋﺪم ﻇﻬﻮر أﺷﺮﻃﺔ اﻟﺘﺼﻔﺢ اﻷﻓﻘﯿﺔ واﻟﻌﻤﻮدﯾﺔ ﻋﻠﻰ ﺟﻮاﻧﺐ أوأﺳﻔﻞ اﻹﻃﺎر .وﺗﺄﺧﺬ اﻟﻘﯿﻢ yesﻟﻠﻈﻬﻮر . noﻟﻌﺪم اﻟﻈﻬﻮر .و autoاﻟﺘﻲ ﺗﺤﺪد ﻇﻬﻮر اﻷﺷﺮﻃﺔ أو ﻋﺪﻣﻪ ﺗﻠﻘﺎﺋﯿﺎً ﺑﺤﺴﺐ اﻟﺤﺎﺟﺔ إﻟﯿﻬﺎ .ﺗﻤﺎﻣًﺎ ﻛﻤﺎ ﯾﺤﺪث ﻓﻲ ﻣﻌﻈﻢ ﺗﻄﺒﯿﻘﺎت Windows\"SCROLLING=\"yes\"SCROLLING=\"no\"SCROLLING=\"auto • NORESIZEﻋﻨﺪ إﺿﺎﻓﺔ ﻫﺬه اﻟﺨﺎﺻﯿﺔ ﯾﺘﻢ ﻣﻨﻊ ﻋﻤﻠﯿﺔ اﻟﺘﺤﻜﻢ ﺑﺤﺠﻢ اﻹﻃﺎر ﺑﺎﻟﺘﺼﻐﯿﺮ أو اﻟﺘﻜﺒﯿﺮ ﻣﻦ ﺧﻼل اﻟﺴﺤﺐ واﻹﻓﻼت .وﻫﻲ ﻻ ﺗﺄﺧﺬ أي ﻗﯿﻢ.ﻓﻘﻂ ﺗﻜﺘﺐ ﻛﻤﺎ ﻫﻲ وﻟﺘﻮﺿﯿﺢ ﻣﺒﺪأ ﻋﻤﻞ ﻫﺬه اﻟﺨﺼﺎﺋﺺ إﻟﯿﻚ ﻫﺬه اﻟﻤﺜﺎل ،وﻗﻢ ﺑﺘﻔﺤﺺ ﻫﺬه اﻟﺼﻔﺤﺔ واﻟﺘﺪﻗﯿﻖ ﻓﻲ ﺗﻔﺎﺻﯿﻠﻪ ﻟﻜﻲ ﺗﻘﺎرﻧﻬﺎ ﺑﻤﺎ ﺳﯿﻨﺘﺞ ﻋﻦ اﻟﻤﺜﺎل اﻟﺘﺎﻟﻲ ،ﻛﺬﻟﻚ ﺣﺎول اﻟﻘﯿﺎم ﺑﺘﻜﺒﯿﺮ اﻹﻃﺎر أو ﺗﺼﻐﯿﺮه ﺑﻮﺿﻊ اﻟﻤﺆﺷﺮ ﻋﻠﻰ اﻟﺤﺪ ﺛﻢ اﺳﺘﺨﺪام اﻟﺴﺤﺐ واﻹﻓﻼت ﺑﺎﻹﺗﺠﺎه اﻟﻤﻄﻠﻮب .وذﻟﻚ ﻟﻜﻲ ﺗﺴﺘﻄﯿﻊ ﺗﻤﯿﯿﺰ ﻋﻤﻞ اﻟﺨﺎﺻﯿﺔ NORESIZE>\"<FRAMESET COLS=\"50%,50%\"<FRAME SRC=\"frame1.htm\" MARGINHEIGHT=\"40\" MARGINWIDTH=\"30>SCROLLING=\"yes\" NORESIZE>\"<FRAME SRC=\"frame2.htm></FRAMESET إﻟﻘﻲ ﻧﻈﺮة اﻵن ﻋﻠﻲ ﻫﺬه اﻟﺼﻔﺤﺔ ﺗﻼﺣﻆ ﻋﺪم اﻟﻘﺪرة ﻋﻠﻲ اﻟﺘﺤﻜﻢ ﻓﻲ ﺣﺠﻢ اﻹﻃﺎر ﻣﻦ ﺧﻼل ﻣﺆﺷﺮ اﻟﻤﻮس. ﻛﺬﻟﻚ ﻫﻨﺎك اﻟﺨﺼﺎﺋﺺ FRAMEBORDER, FRAMESPACING, BORDER, BORDERCOLORاﻟﺘﻲ ﺗﺴﺘﺨﺪم ﻣﻊ ﻫﺬا اﻟﻮﺳﻢ وﺑﻨﻔﺲ اﻟﺘﻔﺎﺻﯿﻞ اﻟﺘﻲ ذﻛﺮت ﻣﻊ >.<FRAMESET ﻟﻜﻨﻬﺎ ﺑﺎﻟﻄﺒﻊ ﺗﺤﺪد ﺧﺼﺎﺋﺺ اﻹﻃﺎر وﺣﺪه وﻟﯿﺲ ﻣﺠﻤﻮﻋﺔ اﻹﻃﺎرات ﻛﻜﻞ ﻓﻲ اﻟﺼﻔﺤﺔ .وﻫﻲ ﺗﻌﻤﻞ ﻋﻠﻰ ﻣﺘﺼﻔﺤﺎت ﻣﻌﯿﻨﺔ دون ﻏﯿﺮﻫﺎ.
frames in-line و اﻵن ﻧﺘﺤﺪث ﻋﻦ ﻛﯿﻔﯿﺔ إدراج إﻃﺎر داﺧﻞ ﺻﻔﺤﺔ ﻋﺎدﯾﻪ ﻣﺜﻞ ﻫﺬاو اﻵن أﻧﺎ ﻟﺪي ﺻﻔﺤﺘﯿﻦ ﯾﻈﻬﺮون ﻓﻲ ﺻﻔﺤﺔ واﺣﺪه ﻓﻲ اﻟﺤﻘﯿﻘﺔ وﺳﻢ ال in-line framesﻣﻦ أﺳﻬﻞ اﻷوﺳﻤﻪ ﻛﻞﻣﺎ ﻋﻠﯿﻚ ﻫﻮ ﺗﺤﺪﯾﺪ ﻣﻜﺎن اﻟﺼﻔﺤﺔ اﻟﺘﻲ ﺳﺘﻈﻬﺮ ﻓﻲ اﻹﻃﺎر ﺑﺸﻜﻞ ﺻﺤﯿﺢ ﻛﻤﺎ ﺗﺤﺪد اﻹرﺗﻔﺎﻋﺎت و اﻟﻌﺮض ﺑﺸﻜﻞ ﻣﻨﺎﺳﺐ><IFRAME SRC=\"inlineframes1.html\" WIDTH=\"70%\" HEIGHT=\"90\"></IFRAMEﺑﺎﻟﻄﺒﻊ ﺗﺴﺘﻄﯿﻊ ان ﺗﺪرج أﻛﺜﺮ ﻣﻦ إﻃﺎرﻓﻲ ﺻﻔﺤﺔ واﺣﺪه ﻟﻜﻦ ﯾﺠﺐ ﻋﻠﯿﻚ أن ﺗﻌﻄﻲ ﻛﻞ إﻃﺎر اﺳﻢ ) NAME ﺳﻨﻘﻮم ﺑﺸﺮح ﻫﺬه اﻟﺨﺎﺻﯿﻪ ﻓﻲ اﻟﺪرس اﻟﻘﺎدم (][left] [right و إﻟﯿﻚ ﺑﺎﻟﻮﺳﻢ اﻟﺨﺎص ﺑﺬﻟﻚ><IFRAME SRC=\"left.html\" NAME=\"left\"></IFRAME><IFRAME SRC=\"right.html\" NAME=\"right\"></IFRAME و ﺑﺎﻟﻄﺒﻊ ﺗﺴﺘﻄﯿﻊ ان ﺗﺴﺘﺨﺪم ﻣﻌﻬﺎ ﻛﻞ اﻟﺨﺼﺎﺋﺺ ﻣﻊ ﻫﺬا اﻟﻮﺳﻢ ﻛﻤﺎ ذﻛﺮﻧﺎ ﻣﻦ ﻗﺒﻞ ،وﻻ ﺗﻘﻠﻖ ﺳﺄﻗﻮم إﻧﺸﺎء اﷲ ﺑﺸﺮح اﻟﺨﺎﺻﯿﻪ NAMEﺑﺎﻟﺘﻔﺼﯿﻞ ﻓﻲ اﻟﺪرس اﻟﻘﺎدم اﻟﺪرس اﻟﺘﺎﻟﻲ««« ﺗﺎﺑﻊ اﻷﻃﺮ اﻟﻤﺘﻘﺪﻣﺔ ﻛﻤﺎ ﺗﺮى ﻻزﻟﻨﺎ ﻧﺘﺎﺑﻊ ﻓﻲ ﻣﻮﺿﻮع اﻹﻃﺎرات ،وﻓﻲ اﻟﻘﺴﻢ اﻟﺜﺎﻟﺚ ﻣﻨﻪ .وذﻟﻚ ﻷﻫﻤﯿﺔ ﻫﺬا اﻟﻤﻮﺿﻮع وﺗﺸﺎﺑﻚ ﺧﻄﻮﻃﻪ .وﺧﺼﻮﺻﺎً ﻷﻧﻨﺎ ﻧﺤﺘﺎج إﻟﻰ اﻟﺘﻌﺎﻣﻞ ﻣﻊ أﻛﺜﺮ ﻣﻦ وﺳﻢ ﻓﻲ ﻧﻔﺲ اﻟﻮﻗﺖ وداﺧﻞ أﻛﺜﺮ ﻣﻦ ﻣﻠﻒ .ﻣﻤﺎ ﯾﺴﺘﺪﻋﻲ اﻟﺘﺮﻛﯿﺰ ﻋﻨﺪﻣﺎ ﺗﺮﯾﺪ إﻧﺸﺎء ﺻﻔﺤﺔ إﻃﺎرات. ﻓﻬﺮس اﻟﺼﻔﺤﺔ ] [ TARGET | NAME NAMEﻟﻘﺪ أﻧﻬﯿﻨﺎ ﻓﻲ اﻟﺪرﺳﯿﻦ اﻟﻤﺎﺿﯿﯿﻦ ﺷﺮح ﻛﺎﻓﺔ اﻟﻮﺳﻮم واﻟﺨﺼﺎﺋﺺ اﻟﺘﻲ ﺗﺘﻌﻠﻖ ﺑﺎﻹﻃﺎرات ،ﻋﺪا واﺣﺪة ﻫﻲ NAME وﺳﻮف أﻗﻮم ﺑﺸﺮﺣﻬﺎ ﺑﺼﻮرة واﻓﯿﺔ ﻓﻲ ﻫﺬا اﻟﺪرس ،إن ﻫﺬه اﻟﺨﺎﺻﯿﺔ ﺗﻌﺘﺒﺮ ﻣﻦ أﻫﻢ ﺧﺼﺎﺋﺺ اﻟﻮﺳﻢ ><FRAMEﻷﻧﻬﺎ ﺗﺤﺪد ﻃﺮﯾﻘﺔ ﺗﻨﺴﯿﻖ اﻟﻌﻤﻞ ﺑﯿﻦ اﻹﻃﺎرات واﻟﺼﻔﺤﺎت وأﺳﻠﻮب ﻋﺮﺿﻬﺎ .ﻟﻨﻌﺘﺒﺮ ﻫﺬا ﺗﻌﺮﯾﻔﺎً ﻣﺒﺪﺋﯿﺎً .وﻟﻜﻲ أوﺿﺢ ﻟﻚ اﻟﻬﺪف ﻣﻦ ﻫﺬه اﻟﺨﺎﺻﯿﺔ ،ﻗﻢ ﺑﺎﺳﺘﻌﺮاض اﻟﻤﺜﺎل اﻟﺘﺎﻟﻲ ...اﻟﺬي ﻗﻤﺖ ﻓﯿﻪ ﺑﺘﻤﺜﯿﻞ ﺑﻌﺾ اﻷﺟﺰاء ﻣﻦ ﻫﺬا اﻟﻤﻮﻗﻊ )ﻟﻨﺘﺮك ﺗﻠﻚ اﻷﻣﺜﻠﺔ اﻟﻤﻤﻠﺔ اﻟﺘﻲ ﻛﻨﺎ ﻧﻌﻤﻞ ﻋﻠﯿﻬﺎ ﻓﻲ ﻫﺬا اﻟﺪرﺳﯿﻦ اﻟﺴﺎﺑﻘﯿﻦ وﻟﻨﺒﺪأ ﺑﺎﻟﻌﻤﻞ اﻟﺠﺪي( .وأﻧﻘﺮ ﻋﻠﻰ أزرار اﻟﻮﺻﻼت اﻟﺘﺸﻌﺒﯿﺔ اﻟﻤﻮﺟﻮدة ﻓﻲ اﻹﻃﺎر اﻷﯾﺴﺮ
ﻣﺎذا وﺟﺪت ؟ ﻋﻨﺪ اﻟﻀﻐﻂ ﻋﻠﻲ أي وﺻﻠﻪ ﻓﻲ اﻹﻃﺎر اﻹﯾﺴﺮ ﯾﻔﺘﺢ اﻟﺼﻔﺤﺔ ﻓﻲ اﻹﻃﺎر اﻵﺧﺮ إذن ﻛﯿﻒ ﯾﺤﺪث ﻫﺬا ؟ ﻫﻨﺎ ﯾﺄﺗﻲ دور اﻟﺨﺎﺻﯿﺔ NAMEواﻟﺘﻲ ﻧﻘﻮم ﻣﻦ ﺧﻼﻟﻬﺎ ﺑﺘﻌﯿﯿﻦ اﺳﻢ ﻣﺎ ﻟﻺﻃﺎر ( أي اﻹﻃﺎر اﻟﺬي ﻧﺮﻏﺐ أن ﺗﻈﻬﺮﺑﻪ اﻟﻤﻠﻔﺎت ﻋﻨﺪﻣﺎ ﻧﻘﻮم ﺑﺎﻟﻨﻘﺮ ﻋﻠﻰ اﻟﻮﺻﻼت اﻟﺘﺸﻌﺒﯿﺔ ) ﺣﯿﺚ ﺳﯿﺘﻢ ﻓﯿﻤﺎ ﺑﻌﺪ اﺳﺘﺨﺪام ﻫﺬا اﻹﺳﻢ ﻣﻦ أﺟﻞ اﺳﺘﻬﺪاف ﻫﺬا اﻹﻃﺎر ﻣﻦ ﻗﺒﻞ اﻟﻮﺻﻼت اﻟﺘﺸﻌﺒﯿﺔ ﻓﻲ اﻹﻃﺎرات اﻷﺧﺮى أو ﺣﺘﻰ ﻓﻲ اﻟﺼﻔﺤﺎت اﻷﺧﺮى. وﺑﺎﻟﻤﻨﺎﺳﺒﺔ ﻓﻘﺪ ﺣﺎن اﻵن ذﻛﺮ ﺧﺎﺻﯿﺔ ﺟﺪﯾﺪة ﻣﻦ ﺧﺼﺎﺋﺺ اﻟﻮﺳﻢ ( > <A> ... </Aوﻫﻮ وﺳﻢ اﻟﻮﺻﻼت اﻟﺘﺸﻌﺒﯿﺔ ﻛﻤﺎ ﻋﺮﻓﺖ ﻓﻲاﻟﻮﺻﻠﻪ اﻷﺳﺎﺳﯿﻪ ) وﻫﺬه اﻟﺨﺎﺻﯿﺔ ﻫﻲ TARGET. دﻋﻨﺎ ﻧﻘﻮم ﺑﺘﺮﺗﯿﺐ اﻷﻣﻮر ﺑﺼﻮرة أﻛﺜﺮ وﺿﻮﺣًﺎ وﺗﺴﻠﺴ ًﻼ: أن ﻫﺬا اﻟﻮﺳﻢ ﯾﻮﺿﻊ ﻓﻘﻂ ﻓﻲ اﻟﻤﻠﻒ اﻟﺮﺋﯿﺴﻲ إذن ﻫﻲ ﺗﻮﺿﻊ ﻓﻲ اﻟﻤﻠﻒ اﻟﺮﺋﯿﺴﻲ ...ﻫﺬه أﺻﺒﺤﺖ واﺿﺤﺔ! ﻟﻜﻦ ﻣﻊ أي وﺳﻢ ﻣﻦ وﺳﻮم > <FRAMEاﻟﻤﻮﺟﻮدة ﻓﻲ اﻟﻤﻠﻒ اﻟﺮﺋﯿﺴﻲ؟؟ أﻧﻪ ﯾﻮﺿﻊ ﻓﻲ اﻟﻮﺳﻢ اﻟﺨﺎص ﺑﺘﻌﺮﯾﻒ اﻹﻃﺎر اﻟﻌﺎم اﻟﺬي ﺳﺘﻈﻬﺮ ﺑﻪ اﻟﻤﻠﻔﺎت .وﺑﺎﻓﺘﺮاض أﻧﻨﺎ ﻧﺮﯾﺪ ﺗﺴﻤﯿﺔ ﻫﺬا اﻹﻃﺎر ﺑﺎﻻﺳﻢ .mainوﻫﻮ اﺳﻢ اﺧﺘﻠﻘﺘﻪ أﻧﺎ ﺣﺴﺐ ﻣﺎ أرﯾﺪ وأﺳﺘﻄﯿﻊ إﻋﻄﺎءه أي اﺳﻢ آﺧﺮ أرﯾﺪه ﻃﺎﻟﻤﺎ أﻧﻪ ﯾﺒﺪأ ﺑﺤﺮف أﺑﺤﺪي أو رﻗﻢ وﻟﯿﺲ ﺑﺮﻣﺰ ﺧﺎص ﻣﺜﻞ /؟^%$# إذن ﺗﺼﺒﺢ ﺷﯿﻔﺮة اﻟﻤﻠﻒ اﻷﺳﺎﺳﻲ ﻫﻲ:><html><head><title>Master Frame</title></head>\"*<frameset rows=\"68,>\"<frame scrolling=\"no\" noresize src=\"Banner.htm>\"*<frameset cols=\"150,>\"<frame src=\"Contents.htm>\"<frame NAME=\"MAIN\" src=\"index.htm></frameset><noframes><body><p>This page uses frames, but your browser doesn't support them.</p></body></noframes></frameset></html وﺑﻬﺬا ﻧﻜﻮن ﻗﺪ إﻧﺘﻬﯿﻨﺎ ﻣﻦ إﻋﺪاد اﻟﻤﻠﻒ اﻟﺮﺋﯿﺴﻲ ﻟﯿﻜﻮن ﻣﻠﻒ إﻃﺎرات ﻓﻌﺎل ﻣﺎﺋﺔ ﺑﺎﻟﻤﺎﺋﺔ .وﻧﺴﺘﻄﯿﻊ اﻵن اﺳﺘﻬﺪاف ذﻟﻚ اﻹﻃﺎر ﻣﻦ أي ﻣﻜﺎن ﺑﺎﺳﺘﺨﺪام اﻹﺳﻢ اﻟﺬي ﻋﺮﻓﻨﺎه ﺑﻪ. TARGET اﻟﻤﺮﺣﻠﺔ اﻟﺜﺎﻧﯿﺔ ﻫﻲ ﺗﻌﺮﯾﻒ اﻟﻮﺻﻼت اﻟﺘﺸﻌﺒﯿﺔ ﺑﻄﺮﯾﻘﺔ ﺗﺠﻌﻞ اﻟﻤﻠﻔﺎت اﻟﻤﺘﻌﻠﻘﺔ ﺑﻬﺬه اﻟﻮﺻﻼت ﺗﻈﻬﺮ ﻓﻲ اﻹﻃﺎر اﻟﻤﺤﺪد .وﻫﻨﺎ ﯾﺄﺗﻲ دور اﻟﺨﺎﺻﯿﺔ TARGETﺳﺎﻟﻔﺔ اﻟﺬﻛﺮ ﻟﻜﻲ ﺗﻘﻮم ﻋﻠﻰ اﻟﺮﺣﺐ واﻟﺴﻌﺔ ﺑﺄداء ﻫﺬه اﻟﻮﻇﯿﻔﺔ. وﺳﻮف ﻧﻌﻤﻞ اﻵن ﻋﻠﻰ اﻟﻤﻠﻒ اﻟﻤﺴﻤﻰ Contents.htmأﻟﯿﺲ ﻫﻮ اﻟﻤﻠﻒ اﻟﺬي ﯾﺤﺘﻮي ﻋﻠﻰ اﻟﻮﺻﻼت اﻟﺘﺸﻌﺒﯿﺔ؟! ﻟﯿﺼﺒﺢ ﺑﺎﻟﺸﻜﻞ اﻟﺘﺎﻟﻲ:><html><head><title>Master Frame</title></head>\"*<frameset rows=\"68,>\"<frame scrolling=\"no\" noresize TARGET=\"MAIN\" src=\"Banner.htm>\"*<frameset cols=\"150,>\"<frame TARGET=\"MAIN\" src=\"Contents.htm>\"<frame name=\"main\" src=\"index.htm
></frameset><noframes><body><p>This page uses frames, but your browser doesn't support them.</p></body></noframes></frameset></html واﻵن ﺣﺎن وﻗﺖ اﻟﺘﺠﺮﺑﻪ ﺣﺎول أن ﺗﻨﺸﺄ ﻣﻠﻒ ﺑﻨﻔﺴﻚ ؟ ﺑﻌﺪ أن ﻗﻤﺖ ﺑﺎﻟﺘﺠﺮﺑﻪ ﺳﻮف ﻧﺘﺤﺪث اﻵن ﻋﻦ ﻗﯿﻤﺔ ﻣﺘﻘﺪﻣﺔ ﺗﺴﺘﺨﺪم ﻣﻊ اﻟﺨﺎﺻﯿﻪ TARGETوﻫﻲ \" \"_topﻟﺘﺨﺒﺮ اﻟﻤﺘﺼﻔﺢ أن ﯾﻘﻮم ﺑﺘﺤﻤﯿﻞ اﻟﺼﻔﺤﺔ ﻓﻲ اﻟﻤﺴﺘﻮى اﻷﻋﻠﻰ ﻣﻦ اﻟﺸﺎﺷﺔ .أي ان ﯾﻘﻮم ﺑﺈﻟﻐﺎء أي إﻃﺎرات أو ﺻﻔﺤﺎتﻋﺎدﯾﺔ ﻣﻮﺟﻮدة أﺻ ًﻼ وأن ﯾﺤﻤﻞ اﻟﺼﻔﺤﺔ اﻟﺠﺪﯾﺪة ﻣﻜﺎﻧﻬﺎ .وﻫﺬه اﻟﻘﯿﻤﺔ ﻣﻌﺮﻓﺔ ﺑﺸﻜﻞ ﻣﺴﺒﻖ ﻓﻲ ﻟﻐﺔ HTMLوﻟﯿﺴﺖ ﻣﻦ ﻋﻨﺪي ﻛﻤﺎ ﻓﻲ اﻹﺳﻢ main. واﻟﺤﻘﯿﻘﺔ أﻧﻪ ﯾﻮﺟﺪ ﺛﻼث ﻗﯿﻢ أﺧﺮى ﺑﺎﻹﺿﺎﻓﺔ إﻟﻰ _topﻣﻌﺮﻓﺔ ﺑﺸﻜﻞ ﻣﺴﺒﻖ ﻓﻲ ﻟﻐﺔ HTMLﻟﺘﺤﺪد ﻣﻮﻗﻊ ﻇﻬﻮر اﻟﺼﻔﺤﺔ اﻟﻤﻌﻨﯿﺔ .وﯾﺠﺐ أن ﺗﺘﺬﻛﺮ داﺋﻤًﺎ أﻧﻬﺎ ﺗﻜﺘﺐ ﺑﺎﻷﺣﺮف اﻟﺼﻐﯿﺮة lowercase.ﻓﺈذا ﻛﺘﺒﺖ ﺑﺎﻷﺣﺮف اﻟﻜﺒﯿﺮة ﻓﻠﻦ ﺗﺤﺼﻞ ﻋﻠﻰ اﻟﻨﺘﯿﺠﺔ اﻟﺘﻲ ﺗﺮﯾﺪﻫﺎ ﻷﻧﻬﺎ ﺳﺘﻌﺘﺒﺮ ﻓﻲ ﻫﺬه اﻟﺤﺎﻟﺔ وﻛﺄﻧﻬﺎ أﺳﻤﺎء ﻋﺎدﯾﺔ .وﻫﺬه ﻫﻲ اﻟﻘﯿﻢ اﻷرﺑﻌﺔ : _top ﺗﺤﻤﻞ اﻟﺼﻔﺤﺔ ﻓﻲ أﻋﻠﻰ ﻣﺴﺘﻮى ﻟﻠﺸﺎﺷﺔ أي ﺗﻠﻐﻲ اﻹﻃﺎرات اﻟﻤﻮﺟﻮدة أﺻﻼً_blank ﺗﻘﻮم ﺑﻔﺘﺢ ﺷﺎﺷﺔ ﺟﺪﯾﺪة وﻓﺎرﻏﺔ ﻟﻠﻤﺘﺼﻔﺢ وﺗﻌﺮض اﻟﺼﻔﺤﺔ اﻟﻤﺤﻤﻠﺔ ﻓﯿﻪ_self
(اﻟﺤﺎﻟﺔ اﻹﻓﺘﺮاﺿﯿﺔ( ﺗﻘﻮم ﺑﺘﺤﻤﯿﻞ اﻟﺼﻔﺤﺔ ﻓﻲ ﻧﻔﺲ اﻹﻃﺎر اﻟﺬي ﺗﻮﺟﺪ ﺑﻪ اﻟﻮﺻﻠﺔ اﻟﺘﺸﻌﺒﯿﺔ اﻟﺘﻲ ﺗﻢ اﻟﻨﻘﺮ ﻋﻠﯿﻬﺎ) ،وﺑﺎﻟﻄﺒﻊ ﻫﺬا ﻣﺎ ﯾﺤﺪث داﺋﻤﺎ دون وﺟﻮد ﻫﺬه اﻟﻘﯿﻤﺔ ،أﻟﯿﺲ ﻛﺬﻟﻚ؟ )_parent ﺗﻘﻮم ﺑﻌﺮض اﻹﻃﺎر اﻟﻤﺤﻤﻞ ﻣﻜﺎن اﻹﻃﺎر اﻷب ،وﺗﺄﻣﻞ اﻟﺸﻜﻞ اﻟﺘﺎﻟﻲ اﻟﺬي ﯾﻤﺜﻞ ﺻﻔﺤﺔ إﻃﺎرات ﻣﺮﻛﺒﺔ. أﻧﺖ ﺗﻌﺮف أﻧﻨﺎ ﻧﺤﺘﺎج إﻟﻰ ﺛﻼﺛﺔ أزواج ﻣﻦ اﻟﻮﺳﻮم >... <FRAMESET > </FRAMESETﻹﺧﺮاج ﻣﺜﻞ ﻫﺬه اﻟﺼﻔﺤﺔ. § اﻷول ﻟﺘﺤﺪﯾﺪ اﻟﺼﻔﺤﺔ ﻛﻜﻞ § اﻟﺜﺎﻧﻲ ﻟﺘﺤﺪﯾﺪ اﻹﻃﺎرﯾﻦ ٢و ٣اﻟﻤﺘﻔﺮﻋﯿﻦ ﻣﻦ اﻟﺼﻔﺤﺔ اﻟﺮﺋﯿﺴﯿﺔ § اﻟﺜﺎﻟﺚ ﻟﺘﺤﺪﯾﺪ اﻹﻃﺎرﯾﻦ ٤و ٥اﻟﻤﺘﻔﺮﻋﯿﻦ ﻣﻦ اﻹﻃﺎر ٣ وﺑﺎﻟﺘﺎﻟﻲ ﻧﻘﻮل أن اﻟﺼﻔﺤﺔ اﻟﺮﺋﯿﺴﯿﺔ ﻫﻲ اﻷب )أو اﻷم إذا أردت( ﻟﻺﻃﺎرﯾﻦ ٢و ٣وأناﻹﻃﺎر ٣ﻫﻮ اﻷب ﻟﻺﻃﺎرﯾﻦ ٤و .٥وﻋﻠﻰ ﺳﺒﯿﻞ اﻟﻤﺜﺎل إذا اﺣﺘﻮى اﻹﻃﺎر ٥أو ٤ﻋﻠﻰ وﺻﻠﺔ ﺗﺸﻌﺒﯿﺔ ﻫﺪﻓﻬﺎ اﻟﻘﯿﻤﺔ _ parentﻟﯿﺘﻢ ﺗﺤﻤﯿﻠﻬﺎ ﻣﻜﺎن اﻹﻃﺎر ...٣وﻫﻜﺬا اﻷﻣﺮ ﺑﺎﻟﻨﺴﺒﺔ ﻟﻺﻃﺎرﯾﻦ ١و ٢ﺑﻤﻘﺎﺑﻞ اﻟﺼﻔﺤﺔ اﻟﺮﺋﯿﺴﯿﺔ. وﻟﻠﺘﻤﯿﯿﺰ ﺑﯿﻦ ﻫﺬه اﻟﻘﯿﻤﺔ واﻟﻘﯿﻤﺔ _ topﻓﺈن اﻟﻘﯿﻤﺔ _ topﺗﻘﻮم ﺑﺎﻟﺘﺤﻤﯿﻞ ﻓﻲ اﻟﻤﺴﺘﻮى اﻷول )اﻷﻋﻠﻰ( داﺋﻤﺎً وﺑﻐﺾ اﻟﻨﻈﺮ ﻋﻦ ﻣﻮﻗﻊ اﻟﻮﺻﻠﺔ اﻟﺘﺸﻌﺒﯿﺔ. ﻧﺮﺟﻮا ان ﻧﻜﻮن ﻟﻢ ﻧﻄﻞ ﻋﻠﯿﻚ وان ﯾﻜﻮن اﻷﻣﺮ ﺳﻬﻞ اﻟﻨﻤﺎذج
اﻟﻨﻤﺎذج ﻫﻲ اﻟﻄﺮﯾﻘﺔ اﻟﺒﺴﯿﻄﺔ ﺟﺪا اﻟﺘﻲ ﺗﺴﻤﺢ ﻟﺰوارك أن ﯾﺮﺳﻠﻮا ﻟﻚ ﻣﻌﻠﻮﻣﺎت ﺑﺴﯿﻄﻪ ،ﺳﻮاء ﻷﻏﺮاض اﻟﺮد ، اﻹﺷﺘﺮاك أو ﻣﻌﻠﻮﻣﺎت ﺷﺮاء ،أ ،اﻟﻌﺪﯾﺪ ﻣﻦ اﻹﺳﺘﻌﻤﺎﻻت اﻵﺧﺮى. اﻟﻨﻤﺎذج اﻷﺳﺎﺳﯿﻪﯾﺸﺮح ﻫﺬا اﻟﺪرس ﻛﯿﻔﯿﻪ ﺗﻀﻤﯿﻦ ﻧﻤﻮذج داﺧﻞ ﺻﻔﺤﺎت اﻟﻤﻮﻗﻊ و ﯾﻘﻮم ﺑﺘﻌﻠﯿﻤﻚ اﻟﻮﺳﻮم اﻷﺳﺎﺳﯿﻪ ﻷﺷﻜﺎل اﻟﻨﻤﺎذج و ﻣﺤﺘﻮﯾﺎﺗﻬﺎ ﺗﺎﺑﻊ اﻟﻨﻤﺎذج اﻷﺳﺎﺳﯿﻪ ﻧﺘﺎﺑﻊ ﻓﻲ ﻫﺬا اﻟﺪرس ﺑﺎﻗﻲ وﺳﻮم أﺷﻜﺎل اﻟﻨﻤﺎذج و ﺑﻌﺾ اﻷﺷﻜﺎل اﻟﺨﺎﺻﻪ اﻟﻤﺘﻘﺪﻣﺔ ﺗﻨﺴﯿﻖ اﻟﻨﻤﺎذجﻫﻨﺎك اﻟﻌﺪﯾﺪ ﻣﻦ اﻟﻮﺳﻮم ) ﺗﺴﻤﻲ ﺑﺎﻟﻮﺳﻮم اﻟﺨﺎدﻋﻪ( و اﻟﺘﻲ ﺗﻌﻄﻲ اﻟﻨﻤﻮذج ﻣﻨﻈﺮ ﺟﯿﺪ ﻓﻲ اﻟﺘﻌﺎﻣﻞ و ﺗﻜﻮن ﺳﻬﻠﺔ اﻹﺳﺘﻌﻤﺎل ﻣﻊ ﻛﻞ اﻟﺰوار واﻟﻘﺮاء ﺻﻮرة ﻟﻠﺰر Submit رﺑﻤﺎ ﺗﻜﻮن ﻗﺪ ﻣﻠﻠﺖ ﻣﻦ إﺳﺘﻌﻤﻞ زر Submitاﻟﺮﻣﺎدي وﺗﺮﯾﺪ أن ﺗﻀﯿﻒ ﻋﻠﯿﻪ ﺑﻌﺾ اﻟﺤﯿﻮﯾﻪ ﻫﺬا ﻣﺎ ﻗﻤﻨﺎ ﺑﺸﺮﺣﻪ ﻓﻲ ﻫﺬا اﻟﺪرس اﻟﻨﻤﺎذج اﻷﺳﺎﺳﯿﻪ ﺳﻨﺘﺤﺪث اﻵن أﻋﺰاﺋﻲ ﻋﻦ اﻟﻨﻤﺎذج وﻛﯿﻔﯿﺔ ﺗﻀﻤﯿﻨﻬﺎ ﻓﻲ ﺻﻔﺤﺎت اﻟﻮﯾﺐ. ﻓﻬﺮس اﻟﺼﻔﺤﺔ ] ﻣﻘﺪﻣﺔ | [ INPUT | ENCTYPE | METHOD | ACTION ﻣﻘﺪﻣﺔ ﻻ ﺗﻜﻤﻦ ﺻﻌﻮﺑﺔ اﻟﺘﻌﺎﻣﻞ ﻣﻊ اﻟﻨﻤﺎذج ﻓﻲ ﻛﻮﻧﻬﺎ ﻣﻌﻘﺪة ﺑﺤﺪ ذاﺗﻬﺎ ،ﻛﻼ ...ﻓﻬﻲ إﺣﺪى اﻟﻌﻨﺎﺻﺮ اﻟﺘﻲ ﺗﺪﻋﻤﻬﺎ ﻟﻐﺔ HTMLوﻫﻲ ﻣﺠﺮد وﺳﻮم ﻋﺎدﯾﺔ ﻣﺜﻠﻬﺎ ﻣﺜﻞ اﻟﻮﺳﻮم اﻟﺘﻲ ﺗﻌﺎﻣﻠﻨﺎ ﻣﻌﻬﺎ ﻓﻲ ﺟﻤﯿﻊ اﻟﺪروس اﻟﺴﺎﺑﻘﺔ .وﺑﺈﻣﻜﺎﻧﻚإﻧﺸﺎء اﻟﻨﻤﺎذج ﻓﻲ ﻣﻮﻗﻌﻚ ﺑﻨﻔﺲ اﻟﺴﻬﻮﻟﺔ اﻟﺘﻲ ﺗﺪرج ﻓﯿﻬﺎ ﺟﺪو ًﻻ أو إﻃﺎرًا )ﻫﺬا ﺑﺎﻟﻄﺒﻊ إذا ﻛﻨﺖ ﺗﻌﺘﻘﺪ أن اﻟﺠﺪاول واﻹﻃﺎرات ﺳﻬﻠﺔ( ﻟﻜﻦ اﻟﺘﺪاﺧﻞ ﺑﯿﻨﻬﺎ )وأﻋﻨﻲ اﻟﻨﻤﺎذج( وﺑﯿﻦ ﻟﻐﺎت اﻟﺒﺮﻣﺠﺔ اﻟﻤﺘﻘﺪﻣﺔ ﻓﻲ اﻟﻮﯾﺐ ﻣﺜﻞJavaScript, CGIﻫﻲ ﻣﺎ ﯾﺠﻌﻠﻬﺎ ﺗﺨﺘﻠﻒ ﻋﻦ ﺳﺎﺑﻘﯿﻬﺎ ﻣﻦ اﻟﻮﺳﻮم أو اﻟﻌﻨﺎﺻﺮ اﻷﺧﺮى .ﺧﺎﺻﺔ إذا اﺣﺘﺠﺖ إﻟﻰ ﺑﻌﺾ اﻟﻤﻘﺎﻃﻊ اﻟﺒﺮﻣﺠﯿﺔ ﻣﻦ ﻫﺬه اﻟﻠﻐﺎت ﺿﻤﻦ ﻧﻤﺎذﺟﻚ .أﻣﺎ إذا اﻛﺘﻔﯿﺖ ﺑﺎﻹﻣﻜﺎﻧﺎت اﻟﻤﺘﻮاﺿﻌﺔ اﻟﺘﻲ ﺗﻮﻓﺮﻫﺎHTMLﺑﺎﻟﻨﺴﺒﺔ ﻟﻠﻨﻤﺎذج .ﻓﻤﺎ ﻣﻦ ﻣﺸﻜﻠﺔ ...ﻷﻧﻪ ﺳﯿﻜﻮن ﺑﺈﻣﻜﺎﻧﻚ اﻟﺘﻌﺎﻣﻞ ﻣﻌﻬﺎ ﺑﻜﻞ ﺑﺴﺎﻃﺔ .وﻓﻲ ﻫﺬا اﻟﺪرس ﻟﻦ ﻧﺘﻄﺮق ﺑﺎﻟﻄﺒﻊ إﻟﻰ أي ﻣﻦ اﻟﻠﻐﺎت ﺳﻮى HTML.
إن اﻟﻮﺳﻢ اﻷﺳﺎﺳﻲ ﻟﻠﻨﻤﺎذج واﻟﺘﻲ ﯾﺠﺐ أن ﯾﺪرج ﺟﻤﯿﻊ اﻟﻮﺳﻮم اﻷﺧﺮى اﻟﻤﺘﻌﻠﻘﺔ ﺑﺎﻟﻨﻤﺎذج داﺧﻞ ﻫﺬﯾﻦ اﻟﻮﺳﻤﯿﻦ -:><FORM> ... </FORM وﻛﻤﺎ ﺟﺮت اﻟﻌﺎدة ﻧﺤﺘﺎج ﻟﺘﺤﺪﯾﺪ ﺑﻌﺾ اﻟﺨﺼﺎﺋﺺ اﻟﺘﻲ ﺗﺘﻌﻠﻖ ﺑﻄﺒﯿﻌﺔ ﻫﺬا اﻟﻨﻤﻮذج .وﻟﺪﯾﻨﺎ ﻫﻨﺎ ﺛﻼث ﺧﺼﺎﺋﺺ : ACTION ﺗﺤﺪد اﻟﻌﻨﻮان اﻟﺬي ﺳﯿﺘﻢ إرﺳﺎل ﺑﯿﺎﻧﺎت اﻟﻨﻤﻮذج إﻟﯿﻪ ﻟﺘﺘﻢ ﻣﻌﺎﻟﺠﺘﻬﺎ ﺑﺎﻟﺼﻮرة اﻟﻤﻄﻠﻮﺑﺔ .وﻋﺎدة ﯾﻜﻮن ﻫﺬا ﻋﻨﻮاﻧًﺎ ﻟﺒﺮﯾﺪ إﻟﻜﺘﺮوﻧﻲ Emailﺳﻮف ﯾﺘﻢ إرﺳﺎل ﺑﯿﺎﻧﺎت اﻟﻨﻤﻮذج إﻟﯿﻪ .أو ﻗﺪ ﯾﻜﻮن ﻋﻨﻮاﻧًﺎ ﻟﺒﺮﻧﺎﻣﺞ CGIﻣﻮﺟﻮد ﻋﻠﻰ اﻟﻜﻤﺒﯿﻮﺗﺮ اﻟﺨﺎدم Serverاﻟﺬي ﺗﺘﻮاﺟﺪ ﻋﻠﯿﻪ ﺻﻔﺤﺔ اﻟﻮﯾﺐ ،ﺣﯿﺚ ﯾﺴﺘﻘﺒﻞ ﻫﺬه اﻟﺒﯿﺎﻧﺎت وﯾﻌﺎﻟﺠﻬﺎ ﺣﺴﺐاﻟﺘﻌﻠﯿﻤﺎت اﻟﻤﻮﺟﻮدة ﻓﯿﻪ ﻛﺄن ﯾﻀﯿﻔﻬﺎ ﻣﺜ ًﻼ إﻟﻰ إﺣﺪى اﻟﺼﻔﺤﺎت( ﻛﻤﺎ ﯾﺤﺪث ﻋﺎدة ﻓﻲ دﻓﺎﺗﺮ اﻟﺰوار( أو ﯾﺘﺤﻘﻖ ﻣﻦ ﺻﺤﺔ ﺑﻌﺾ اﻟﺤﻘﻮل اﻟﻤﺪﺧﻠﺔ وﻣﻄﺎﺑﻘﺘﻬﺎ ﻟﻤﻌﺎﯾﯿﺮ ﻣﻌﯿﻨﺔ ،أو أن ﯾﻘﻮم ﺑﺎﻟﺒﺤﺚ ﻋﻦ ﻛﻠﻤﺔ أو ﻋﺒﺎرة ﺿﻤﻦ ﺻﻔﺤﺎت اﻟﻤﻮﻗﻊ ﻛﻤﺎ ﻓﻲ ﻧﻤﺎذج اﻟﺒﺤﺚ اﻟﻤﻮﺟﻮدة ﻓﻲ ﻣﻮاﻗﻊ اﻟﻮﯾﺐ .><FORM ACTION=\"mailto:[email protected]\"> ... </FORM><FORM ACTION=\"name_and_address_of_CGI_script\"> ... </FORM METHOD ﺗﺤﺪد اﻟﻄﺮﯾﻘﺔ اﻟﺘﻲ ﺳﯿﺘﻢ ﺑﻬﺎ اﻟﺘﻌﺎﻣﻞ ﻣﻊ اﻟﻌﻨﻮان اﻟﻤﺤﺪد ﻓﻲ اﻟﺨﺎﺻﯿﺔ اﻟﺴﺎﺑﻘﺔ ACTION.وﻫﻨﺎك ﻗﯿﻤﺘﯿﻦ ﻟﻬﺬه اﻟﺨﺎﺻﯿﺔ ﻫﻤﺎ : GETاﻟﺘﻲ ﺗﺴﺘﺨﺪم ﻓﻲ ﺣﺎﻟﺔ ﻛﻮن ﻋﻤﻠﯿﺔ اﻟﻤﻌﺎﻟﺠﺔ داﺧﻠﯿﺔ أي ﺗﺘﻢ داﺧﻞ اﻟﺨﺎدم Serverﻧﻔﺴﻪ .ﻓﻲ ﻋﻨﺪﻣﺎ ﻧﺴﺘﺨﺪم ﻧﻤﻮذج اﻟﺒﺤﺚ ﻋﻦ ﻛﻠﻤﺔ ﻓﻲ اﻟﻤﻮﻗﻊ ،ﻓﺈن ﻋﻤﻠﯿﺔ اﻟﻤﻌﺎﻟﺠﺔ )أي اﻟﺒﺤﺚ( ﺗﺠﺮي ﻣﺒﺎﺷﺮة ﻓﻲ اﻟﻤﻮﻗﻊ. واﻟﻘﯿﻤﺔ اﻟﺜﺎﻧﯿﺔ ﻫﻲ Postوﺗﺴﺘﺨﺪم ﻋﻨﺪﻣﺎ ﺗﻜﻮن ﻋﻤﻠﯿﺔ اﻟﻤﻌﺎﻟﺠﺔ ﺧﺎرﺟﯿﺔ ﻛﺄن ﯾﺘﻢ إرﺳﺎل اﻟﺒﯿﺎﻧﺎت إﻟﻰ ﻋﻨﻮان ﺑﺮﯾﺪ إﻟﻜﺘﺮوﻧﻲ .><FORM ACTION=\"mailto:[email protected]\" METHOD=\"post\"> ... </FORM><FORM ACTION=\"name_and_address_of_CGI_script\" METHOD=\"get\"> ... </FORM ENCTYPE ﻫﺬه اﻟﺨﺎﺻﯿﺔ ﺗﺤﺪد ﻃﺮﯾﻘﺔ اﻟﺘﺮﻣﯿﺰ اﻟﺘﻲ ﺳﯿﺘﻢ إرﺳﺎل اﻟﺒﯿﺎﻧﺎت وﻓﻘﺎً ﻟﻬﺎ .وﻫﻲ ﺗﺄﺧﺬ اﻟﻘﯿﻤﺘﯿﻦ اﻟﺘﺎﻟﯿﺘﯿﻦ) :ﯾﺠﺐ أن ﺗﻜﺘﺐ ﻫﺬه اﻟﻘﯿﻢ ﻛﻤﺎ ﻫﻲ ﻧﺼًﺎ وﺣﺮﻓًﺎ( application/x-www-form-urlencoded o text/plain o وﺑﺪون اﻟﺨﻮض ﻓﻲ اﻷﺳﺒﺎب اﻟﺘﻘﻨﯿﺔ اﻟﺘﻲ أدت إﻟﻰ إﯾﺠﺎد ﻫﺬﯾﻦ اﻟﻨﻮﻋﯿﻦ ﻣﻦ ﻃﺮق اﻟﺘﺮﻣﯿﺰ أو ﻓﻲ أﻣﻮر ﺑﺮﻣﺠﯿﺔ ﺑﻌﯿﺪة ﻋﻦ ﻣﻮﺿﻮﻋﻨﺎ ،ﻓﺈن اﻟﺪاﻓﻊ ﻹﺳﺘﺨﺪام أي ﻣﻦ اﻟﻘﯿﻤﺘﯿﻦ ﻫﻮ ﻃﺒﯿﻌﺔ ﻋﻤﻠﯿﺔ اﻟﻤﻌﺎﻟﺠﺔ اﻟﺘﻲ ﺳﺘﺠﺮى ﻋﻠﻰ اﻟﺒﯿﺎﻧﺎت أو ﻃﺒﯿﻌﺔ ﺑﺮﻧﺎﻣﺞ اﻟﺒﺮﯾﺪ اﻹﻟﻜﺘﺮوﻧﻲ اﻟﺬي ﺳﺘﺴﺘﻘﺒﻞ ﻫﺬه اﻟﺒﯿﺎﻧﺎت ﻣﻦ ﺧﻼﻟﻪ )إذا ﻛﺎن ﯾﺪﻋﻢ MIMEأم ﻻ ،وﻫﻲ إﺧﺘﺼﺎر ﻟﻠﻌﺒﺎرة Extentions Mail Internet Multi-purposeوﻫﻲ ﻣﻦ اﻟﻤﻌﺎﯾﯿﺮ اﻟﺴﺎﺋﺪة ﻓﻲ اﻹﻧﺘﺮﻧﺖ واﻟﺘﻲ ﺗﺘﻌﻠﻖ ﺑﻨﻘﻞ ﺟﻤﯿﻊ أﻧﻮاع اﻟﺒﯿﺎﻧﺎت ﻣﻦ ﺻﻮت وﺻﻮرة وﻟﯿﺲ ﻓﻘﻂ اﻟﻨﺼﻮص ﻣﻦ ﺧﻼل اﻟﺒﺮﯾﺪ اﻹﻟﻜﺘﺮوﻧﻲ(.وﻣﺎ ﯾﻌﻨﯿﻨﺎ ﻫﻨﺎ ﻫﻮ اﻟﻔﺮق ﺑﯿﻦ اﻟﻄﺮﯾﻘﺘﯿﻦ ﻣﻦ ﺣﯿﺚ ﻃﺮﯾﻘﺔ إرﺳﺎل واﺳﺘﻘﺒﺎل اﻟﺒﯿﺎﻧﺎت .ﻓﻌﻨﺪ اﺳﺘﺨﺪام text/plain ﺳﺘﺼﻞ اﻟﺒﯿﺎﻧﺎت ﺑﺎﻟﺸﻜﻞ اﻟﺘﺎﻟﻲ:NAME=Ahmed SalahAddress=Cairo, Egypt[email protected]
(اﻟﻜﻠﻤﺎت Name, Address, Emailﻫﻲ أﺳﻤﺎء اﻟﺤﻘﻮل ﻓﻲ اﻟﻨﻤﻮذج وﻧﻘﻮم ﻧﺤﻦ ﺑﺘﻌﺮﯾﻔﻬﺎ أﺛﻨﺎء ﻋﻤﻠﯿﺔ ﺗﺼﻤﯿﻢ اﻟﻨﻤﻮذج أﻣﺎ اﻟﻨﺼﻮص اﻟﻈﺎﻫﺮة ﺑﻌﺪ إﺷﺎرة اﻟﻤﺴﺎواة ﻓﻬﻲ اﻟﺒﯿﺎﻧﺎت اﻟﻤﺪﺧﻠﺔ ،وﺳﻮف ﻧﺘﺤﺪث ﻋﻦ ﺗﻌﺮﯾﻒ أﺳﻤﺎء اﻟﺤﻘﻮل ﺑﻌﺪ ﻗﻠﯿﻞ ) أﻣﺎ ﻋﻨﺪ اﺳﺘﺨﺪام application/x-www-form-urlencodedﻓﺴﺘﺼﻞ اﻟﺒﯿﺎﻧﺎت ﺑﺎﻟﺸﻜﻞ:NAME=Ahmed+Salah&Address=Cairo+,+Egypt&[email protected] وﻟﻚ أن ﺗﺨﯿﻞ ﻣﺒﻠﻎ اﻟﺼﻌﻮﺑﺔ ﻓﻲ ﺗﺤﻠﯿﻠﻬﺎ إذا اﺣﺘﻮت ﻋﻠﻰ ﻋﺸﺮات اﻟﺤﻘﻮل .ﻟﺬﻟﻚ ﺗﺘﻮﻓﺮ ﺑﺮاﻣﺞ ﺧﺎﺻﺔ ﺗﻌﺮف ﺑِـ Formatersﺗﻘﻮم ﺑﺈﻋﺎدة ﺗﺮﺗﯿﺐ اﻟﺒﯿﺎﻧﺎت اﻟﻤﺮﺳﻠﺔ ﻣﻦ ﺧﻼل اﻟﻨﻤﺎذج ﺑﺸﻜﻞ ﻣﻔﻬﻮم ﺑﺤﯿﺚ ﺗﺼﺒﺢ ﻛﻤﺎ ﻟﻮ ﻛﺎﻧﺖ ﻣﺮﺳﻠﺔ ﺑﺘﺮﻣﯿﺰ text/plainوإﻟﯿﻚ أﺣﺪﻫﺎ وﻫﻮ ﺑﺮﻧﺎﻣﺞ ﻣﺠﺎﻧﻲ ﯾﺪﻋﻰ UrlCook.ﻟﻜﻦ ﻻ ﺗﻌﺘﻘﺪ أن اﻟﻄﺮﯾﻘﺔ اﻷوﻟﻰ ﻫﻲ اﻷﻓﻀﻞ داﺋﻤﺎً ﻓﺬﻟﻚ ﯾﻌﺘﻤﺪ ﻛﻤﺎ ﻗﻠﻨﺎ ﻋﻠﻰ ﻃﺮﯾﻘﺔ اﻟﻤﻌﺎﻟﺠﺔ واﻟﻨﻘﻞ ﺑﺎﻟﺒﺮﯾﺪ .ﻟﺬﻟﻚ ﻻ ﺿﯿﺮ ﻣﻦ أن ﺗﺠﺮب اﻟﻄﺮﯾﻘﺘﯿﻦ ﻟﺘﻌﺮف أﯾﻬﻤﺎ أﻧﺴﺐ ﻟﻚ . إذن ﺧﻼﺻﺔ اﻟﻘﻮل :ﻗﺪ ﺗﻜﻮن أﻓﻀﻞ ﺻﯿﻐﺔ ﻟﺘﻌﺮﯾﻒ اﻟﻨﻤﻮذج ﻓﻲ ﺣﺎﻟﺔ أردت اﺳﺘﻘﺒﺎل اﻟﺒﯿﺎﻧﺎت ﻣﻦ ﻣﻮﻗﻌﻚ إﻟﻰ ﻋﻨﻮان ﺑﺮﯾﺪك اﻹﻟﻜﺘﺮوﻧﻲ ﻫﻲ :<FORM ACTION=\"mailto:[email protected]\" METHOD=\"post\" ENCTYPE=\"text/plain\">...></FORM وﺑﻬﺬا ﻧﻜﻮن ﻗﺪ إﻧﺘﻬﯿﻨﺎ ﻣﻦ ﻋﻤﻠﯿﺔ ﺗﻌﺮﯾﻒ اﻟﻨﻤﻮذج وﺧﺼﺎﺋﺼﻪ ،ﻟﻜﻦ اﻧﺘﻈﺮ ﻓﻤﺎ زﻟﻨﺎ ﻓﻲ ﺑﺪاﯾﺔ اﻟﻄﺮﯾﻖ. INPUT ﻧﺒﺪأ اﻵن ﻓﻲ ﻋﻤﻠﯿﺔ ﺗﻌﺮﯾﻒ أﺷﻜﺎل اﻟﺒﯿﺎﻧﺎت ﻓﻲ اﻟﻨﻤﻮذج .وﻧﺴﺘﺨﺪم اﻟﻮﺳﻢ > <INPUTﻟﺘﻌﺮﯾﻔﻬﺎ واﻟﺤﻘﯿﻘﺔ أن ﻫﺬه اﻷﺷﻜﺎل ﻫﻲ ﻣﺠﺮد ﺧﺼﺎﺋﺺ أو ﺑﺎﻷﺣﺮى ﻗﯿﻢ ﻟﺨﺼﺎﺋﺺ ﺗﺎﺑﻌﺔ ﻟﻬﺬا اﻟﻮﺳﻢ .ﻛﯿﻒ؟ ...ﻟﻨﺄﺧﺬ ﻣﺜﺎ ًﻻ ﻋﻠﻰ ذﻟﻚ ﻷوﺿﺢ ﻟﻚ ﻫﺬا اﻟﻤﻔﻬﻮمﺣﺴﻨًﺎ ،ﻟﻘﺪ اﺳﺘﺨﺪﻣﺖ اﻟﻮﺳﻢ > <INPUTﻟﺘﻌﺮﯾﻒ ﻫﺬا اﻟﺸﻜﻞ )ﻫﺬه إﺗﻔﻘﻨﺎ ﻋﻠﯿﻬﺎ ﻣﺴﺒﻘﺎً( وﻣﻦ ﺛﻢ ﻗﻤﺖ ﺑﺈﺿﺎﻓﺔ اﻟﺨﺎﺻﯿﺔ TYPEﻟﻬﺬا اﻟﻮﺳﻢ ﻟﺘﺤﺪﯾﺪ ﻧﻮع اﻟﺸﻜﻞ اﻟﺬي أرﯾﺪه وأﻋﻄﯿﺘﻬﺎ اﻟﻘﯿﻤﺔ TEXTأي><FORM ...>\"<INPUT TYPE=\"text></FORM ﻣﻠﺨﺺ ﺳﺮﯾﻊإﻟﯿﻚ ﺟﻤﯿﻊ اﻷﺷﻜﺎل )اﻟﻘﯿﻢ( اﻟﻤﺴﺘﺨﺪﻣﺔ ﻣﻊ اﻟﺨﺎﺻﯿﺔ TYPEوﺳﻮف أﺗﺮﻛﻬﺎ اﻵن ﺑﺪون ﺗﻌﻠﯿﻖ ﻟﺤﯿﻦ ﻣﻨﺎﻗﺸﻬﺎ ﻻﺣﻘًﺎ ﺑﺸﻜﻞ ﻣﻔﺼﻞ .ﻣﻊ ﻣﻼﺣﻈﺔ أن ﻫﻨﺎك ﺷﻜﻠﯿﻦ آﺧﺮﯾﻦ ﻧﺪرﺟﻬﻤﺎ ﺑﺎﻟﻮﺳﻮماﻟﻨﺘﯿﺠﻪ ><SELECT>, <TEXTAREA اﻟﻮﺳﻢ >\"<INPUT TYPE=\"text
>\"<INPUT TYPE=\"password >\"<INPUT TYPE=\"hidden >\"<INPUT TYPE=\"radio >\"<INPUT TYPE=\"checkbox >\"Submit Query <INPUT TYPE=\"submit >\"Reset <INPUT TYPE=\"reset >\"<INPUT TYPE=\"buttonوﺟﻤﯿﻊ اﻟﻘﯿﻢ اﻟﻤﺴﺘﺨﺪﻣﺔ ﻣﻌﻬﺎTYPEأرﺟﻮ أن أﻛﻮن ﻗﺪ وﺿﺤﺖ ﻟﻚ اﻵن وﻇﯿﻔﺔ اﻟﺨﺎﺻﯿﺔ وﻧﻌﻮد اﻵن إﻟﻰ ﻣﺜﺎﻟﻨﺎ ..اﻟﺨﺎﺻﯿﺔ اﻟﺜﺎﻧﯿﺔ اﻟﻤﺴﺘﺨﺪﻣﺔ ﻣﻊ > <INPUTﻫﻲ NAMEوﺗﺴﺘﺨﺪم ﻟﺘﺴﻤﯿﺔ ﺣﻘﻞ اﻟﺒﯿﺎﻧﺎت ﺣﯿﺚ ﻗﻤﺖ ﺑﺈﻋﻄﺎء اﻹﺳﻢ addressﻟﻬﺬا اﻟﺤﻘﻞ ﻓﻲ اﻟﻤﺜﺎل) .ﻟﻚ ﻛﻞ اﻟﺤﺮﯾﺔ ﻓﻲ إﻋﻄﺎء اﻹﺳﻢ اﻟﺬي ﺗﺮﯾﺪه ﻟﻠﺤﻘﻞ( .واﻟﺤﻘﯿﻘﺔ أن ﻫﺬا اﻹﺳﻢ ﯾﻌ ّﺮف اﻟﺤﻘﻞ ﻓﻲ داﺧﻞ اﻟﻨﻤﻮذج ﻧﻔﺴﻪ ،ﺑﺤﯿﺚ ﯾﻤﻜﻦ اﺳﺘﺨﺪاﻣﻪ ﻓﯿﻤﺎ ﺑﻌﺪ ﻟﻠﺤﺎﺟﺎت اﻟﺒﺮﻣﺠﯿﺔ وﺿﺮورات اﻟﻤﻌﺎﻟﺠﺔ إن وﺟﺪت ﻣﻦ ﻗﺒﻞ اﻟﺒﺮاﻣﺞ اﻟﺘﻲ ﻗﺪ ﺗﻀﯿﻔﻬﺎ ﻛﻤﺼﻤﻢ ﻟﻠﻤﻮﻗﻊ .وﺣﺘﻰ ﻋﻨﺪﻣﺎ ﺗﺮﯾﺪ أن ﯾُﺮﺳﻞ اﻟﻨﻤﻮذج إﻟﯿﻚ ﺑﺎﻟﺒﺮﯾﺪ ﻓﺈن ﺣﻘﻮﻟﻪ ﺗﻌﺮّف ﺑﺎﻻﺳﻢ اﻟﺬي أدرﺟﺘﻪ ﻟﻬﺎ ﻣﻦ ﺧﻼل ﻫﺬه اﻟﺨﺎﺻﯿﺔ. )ﻻﺣﻆ ﻣﺎ ﻗﻠُﺘﻪ ﺳﺎﺑﻘﺎً ﻋﻦ ﺗﻌﺮﯾﻒ أﺳﻤﺎء اﻟﺤﻘﻮل ﻋﻨﺪﻣﺎ ﺗﺤﺪﺛﻨﺎ ﻋﻦ اﻟﺘﺮﻣﯿﺰ واﻟﻄﺮق اﻟﺘﻲ ﺗﺼﻞ ﺑﻬﺎ ﻣﺤﺘﻮﯾﺎت اﻟﻨﻤﻮذج(.إﻟﯿﻚ ﻫﺬا اﻟﻤﺜﺎل Cairo, EgyptPlease enter your address : اﻟﻌﺒﺎرة Please enter your address :ﻓﻬﻲ ﻣﺠﺮد ﻋﺒﺎرة ﺗﻮﺿﯿﺤﯿﺔ أﺿﻔﺘﻬﺎ ﻟﯿﻌﺮف اﻟﺰاﺋﺮ ﻣﺎ اﻟﺬي ﯾﺠﺐ ﻋﻠﯿﻪ ﻛﺘﺎﺑﺘﻪ وﺗﺴﺘﻄﯿﻊ ﺻﯿﺎﻏﺔ ﻫﺬه اﻟﻌﺒﺎرة ﻛﻤﺎ ﺗﺮﯾﺪ .ﻓﻔﻲ ﻛﻞ اﻷﺣﻮال ﻟﯿﺲ ﻟﻬﺎ ﻋﻼﻗﺔ ﺑﺠﻮﻫﺮ اﻟﻨﻤﻮذج ﻧﻔﺴﻪ ﺑﻌﻜﺲ اﻟﺨﺎﺻﯿﺔ NAME.><FORM ...>\"Please enter your address : <INPUT TYPE=\"text\" NAME=\"address></FORM أﻣﺎ ﺑﺎﻟﻨﺴﺒﺔ ﻟﻠﻌﺒﺎرة اﻟﻈﺎﻫﺮة داﺧﻞ اﻟﺤﻘﻞ ) Egypt ،Cairoأو أي ﻋﺒﺎرة أﺧﺮى ﺗﺮﯾﺪﻫﺎ( وﻫﻲ ﺑﻤﺜﺎﺑﺔ اﻟﻘﯿﻤﺔ اﻹﻓﺘﺮاﺿﯿﺔ اﻟﺘﻲ ﺗﺮﯾﺪﻫﺎ ﻟﻠﺤﻘﻞ ،ﻓﺒﺎﻹﻣﻜﺎن إﻇﻬﺎرﻫﺎ ﻣﻦ ﺧﻼل اﻟﺨﺎﺻﯿﺔ .VALUEوﻫﺬه اﻟﺨﺎﺻﯿﺔ ﺗﺴﺘﺨﺪم ﻓﻲ اﻟﺤﺎﻻت اﻟﺘﻲ ﻧﺘﻮﻗﻊ ﻓﯿﻬﺎ ﻛﺘﺎﺑﺔ ﻗﯿﻤﺔ دارﺟﺔ أو ﻣﺘﻜﺮرة ﻣﻦ ﻗﺒﻞ ﻣﻌﻈﻢ اﻟﺰوار وﻟﻠﺘﺴﻬﯿﻞ ﻋﻠﯿﻬﻢ ﯾﺘﻢ ﺗﻌﯿﯿﻨﻬﺎ ﻛﻘﯿﻤﺔ إﻓﺘﺮاﺿﯿﺔ وﺑﺎﻟﻄﺒﻊ ﻣﻊ ﺗﻮﻓﺮ إﻣﻜﺎﻧﯿﺔ ﺣﺬﻓﻬﺎ وﻛﺘﺎﺑﺔ ﻣﺎ ﯾﺮﯾﺪﻧﻪ ﺑﺪ ًﻻ ﻣﻨﻬﺎ.><FORM ...>\"Please enter your address : <INPUT TYPE=\"text\" NAME=\"address\" VALUE=\"Cairo, Egypt></FORM ﻗﺪ ﻧﺤﺘﺎج أﺣﯿﺎﻧًﺎ إﻟﻰ ﺗﺤﺪﯾﺪ ﺣﺠﻢ اﻟﺤﻘﻞ وﻟﺬﻟﻚ ﻧﺴﺘﺨﺪم اﻟﺨﺎﺻﯿﺔ SIZEﻣﻊ اﻟﺮﻗﻢ اﻟﺬي ﻧﺮﯾﺪه ﻛﺤﺠﻢ ﻟﻠﺤﻘﻞ، ﻟﻨﺠﺮب اﻟﺮﻗﻢ ٤٠><FORM ...Please enter your address : <INPUT TYPE=\"text\" NAME=\"address\" VALUE=\"Nablus,>\"Palestine\" SIZE=\"40></FORM
Cairo, EgyptPlease enter your address : أو ﻟﻨﺠﺮب اﻟﺮﻗﻢ ١٠أﯾﻀًﺎ Cairo, EgyptPlease enter your address : ﻻ ﯾﻮﺟﺪ ﻟﻠﺨﺎﺻﯿﺔ SIZEأي ﺻﻔﺔ ﺗﺤﻜﻤﯿﺔ ﺑﺎﻟﻨﺴﺒﺔ ﻟﺤﺠﻢ اﻟﻤﺪﺧﻼت اﻟﺘﻲ ﯾﻤﻜﻦ ﻟﻠﺰاﺋﺮ أن ﯾﻜﺘﺒﻬﺎ داﺧﻞ اﻟﺤﻘﻞ. وﺑﻌﺒﺎرة أﺧﺮى :ﺻﺤﯿﺢ أﻧﻨﺎ ﺣﺪدﻧﺎ ﺣﺠﻢ اﻟﺤﻘﻞ ﻟﻜﻦ ذﻟﻚ ﯾﺴﺮي ﻓﻘﻂ ﻋﻠﻰ ﻣﻈﻬﺮه ﻋﻠﻰ اﻟﺸﺎﺷﺔ .وﻻ ﯾﻮﺟﺪ ﻣﺎ ﯾﻤﻨﻊاﻟﺰاﺋﺮ ﻣﻦ اﻟﻜﺘﺎﺑﺔ ﺑﺤﯿﺚ ﯾﺘﺠﺎوز اﻟﻨﺺ ﺣﺠﻢ اﻟﺤﻘﻞ اﻟﻤﺤﺪد .وﻫﻨﺎ ﯾﺄﺗﻲ دور اﻟﺨﺎﺻﯿﺔ MAXLENGTHﻟﺘﺘﺤﻜﻢ ﺑﺎﻟﺤﺪ اﻷﻗﺼﻰ ﻟﻠﻨﺺ اﻟﻤﺪﺧﻞ.><FORM ...Please enter your address : <INPUT TYPE=\"text\" NAME=\"address\" VALUE=\"Nablus,\"Palestine>\"SIZE=\"40\" MAXLENGTH=\"30></FORM Cairo, EgyptPlease enter your address : ﺣﺎول اﻟﻜﺘﺎﺑﺔ ﻓﻲ ﻫﺬا اﻟﺤﻘﻞ ﻷﻛﺜﺮ ﻣﻦ ٣٠ﺣﺮﻓﺎً وأﻧﻈﺮ ﻣﺎذا ﺳﯿﺤﺪث؟اﻟﻨﻮع اﻟﺜﺎﻧﻲ ﻣﻦ اﻟﺤﻘﻮل اﻟﻤﺴﺘﺨﺪﻣﺔ ﻓﻲ اﻟﻨﻤﺎذج ﻫﻮ ﺣﻘﻞ passwordوﻫﻮ ﯾﺸﺒﻪ اﻟﺤﻘﻞ textﻣﻦ ﺣﯿﺚ اﻟﺨﺼﺎﺋﺺﺗﻤﺎﻣًﺎ ﻏﯿﺮ أن ﻣﺪﺧﻼﺗﻪ ﺗﻈﻬﺮ ﻋﻠﻰ ﺷﻜﻞ ****** ﻣﻬﻤﺎ ﻛﺎﻧﺖ ،وﻫﻮ اﻟﻔﺮق اﻟﻮﺣﯿﺪ ﺑﯿﻨﻬﻤﺎ .ورﺑﻤﺎ ﺗﻜﻮن ﻗﺪ اﺳﺘﻨﺘﺠﺖ اﻵن أن ﻫﺬا اﻟﻨﻮع ﻣﻦ اﻟﺤﻘﻮل ﯾﺴﺘﺨﺪم ﻋﻨﺪﻣﺎ ﯾﻮﺟﺪ ﺣﺎﺟﺔ ﻹدﺧﺎل ﻛﻠﻤﺔ ﺳﺮ ﻣﻦ ﻗﺒﻞ اﻟﺰاﺋﺮ ﻓﻲ اﻟﻨﻤﻮذج><FORM ...Please enter your name :>\"<INPUT TYPE=\"text\" NAME=\"the name\" SIZE=\"40\" MAXLENGTH=\"30Please enter your passwod :>\"<INPUT TYPE=\"password\" NAME=\"the password\" SIZE=\"40\" MAXLENGTH=\"30></FORMPlease enter your name :Please enter your password :ﻟﻠﺤﻘﻮل ،وأﻧﺎ ﻓﻲ ﻫﺬا اﻟﻤﺜﺎل أردت أن أوﺿﺢ ﻟﻚ ﻋﺪم VALUESﻻﺣﻆ أﻧﻨﻲ ﻟﻢ أرﻏﺐ ﻓﻲ ﻛﺘﺎﺑﺔ ﻗﯿﻢ إﻓﺘﺮاﺿﯿﺔ أﻫﻤﯿﺔ ﻛﺘﺎﺑﺔ ﻗﯿﻤﺔ إﻓﺘﺮاﺿﯿﺔ ﻟﻠﺤﻘﻮل ﻓﻲ ﺑﻌﺾ اﻟﺤﺎﻻت. ﻧﺄﺗﻲ اﻵن إﻟﻰ اﻟﻨﻮع اﻟﺜﺎﻟﺚ ﻣﻦ أﻧﻮاع اﻟﺤﻘﻮل وﻫﻮ hiddenأي اﻟﺤﻘﻞ اﻟﻤﺨﻔﻲ .وﻛﻤﺎ ﻧﺴﺘﻨﺘﺞ ﻣﻦ اﺳﻤﻪ ﻓﻬﻮ ﻟﻦ ﯾﻈﻬﺮ ﺿﻤﻦ اﻟﻨﻤﻮذج .وﻫﺬا ﻣﺜﺎل:><FORM ...Please enter your name :>\"<INPUT TYPE=\"text\" NAME=\"the name\" VALUE=\"\" SIZE=\"40\" MAXLENGTH=\"30
>\"<INPUT TYPE=\"hidden\" NAME=\"my forms\" VALUE=\"form1 Please enter your passwod :\"<INPUT TYPE=\"password\" NAME=\"the password\" VALUE=\"\" SIZE=\"40>\"MAXLENGTH=\"30></FORM Please enter your name :Please enter your passwod :ﻻﺣﻆ ﻫﻨﺎ أن وﺟﻮد ﻫﺬا اﻟﺤﻘﻞ ﻣﺜﻞ ﻋﺪﻣﻪ ﺑﺎﻟﻨﺴﺒﺔ ﻟﻤﻈﻬﺮ اﻟﻨﻤﻮذج ،وأن اﻟﺰاﺋﺮ ﻟﻦ ﯾﺘﻌﺎﻣﻞ ﻣﻌﻪ ﺑﻞ ورﺑﻤﺎ ﻟﻦ ﯾﻌﺮف أن ﻫﻨﺎك ﺣﻘ ًﻼ ﻣﺨﻔﯿﺎً .واﻟﺴﺆال ﻫﻨﺎ :ﻣﺎ اﻟﻔﺎﺋﺪة ﻣﻦ وﺟﻮد ﺷﻲء ﻣﺨﻔﻰ ﻻ إﻣﻜﺎﻧﯿﺔ ﻻﺳﺘﺨﺪاﻣﻪ؟ وﻟﻜﻲ أﺟﯿﺐ ﻋﻠﻰ ﻫﺬا اﻟﺴﺆال دﻋﻨﻲ أﻃﺮح ﻟﻚ ﻣﺜﺎ ًﻻ أو ﺣﺎﻟﺔ ﻗﺪ ﺗﻮاﺟﻬﻚ ﻛﻤﺼﻤﻢ ﺻﻔﺤﺎت وﯾﺐ... ﻟﻨﻔﺮض أن ﻟﺪﯾﻚ ﺛﻼث ﺻﻔﺤﺎت ﺗﺘﻀﻤﻦ ﻛﻞ ﻣﻨﻬﺎ ﻧﻤﻮذﺟﺎً ﻣﺎ وأن ﻫﺬه اﻟﻨﻤﺎذج ﻣﺘﺸﺎﺑﻬﺔ .وﺗﺤﺘﻮي ﻋﻠﻰ ﻧﻔﺲ اﻟﺤﻘﻮل .وﻋﻨﺪﻣﺎ ﺗﺼﻠﻚ اﻟﺒﯿﺎﻧﺎت ﻛﯿﻒ ﺳﺘﺴﺘﻄﯿﻊ ﺗﻤﯿﯿﺰ أي ﻣﻦ ﻫﺬه اﻟﻨﻤﺎذج اﺳﺘﺨﺪم ﻹرﺳﺎل اﻟﺒﯿﺎﻧﺎت؟ ﺑﺈﻣﻜﺎﻧﻚ إﺿﺎﻓﺔ ﻫﺬا اﻟﺤﻘﻞ )اﻟﻮﻫﻤﻲ( وإﺳﻨﺎد أي اﺳﻢ وأي ﻗﯿﻤﺔ ﻟﻪ ﻓﻲ ﻛﻞ ﻧﻤﻮذج. ﻓﻲ اﻟﻨﻤﻮذج اﻷول ...>\"<INPUT TYPE=\"hidden\" NAME=\"my forms\" VALUE=\"form1 ﻓﻲ اﻟﻨﻤﻮذج اﻟﺜﺎﻧﻲ ...>\"<INPUT TYPE=\"hidden\" NAME=\"my forms\" VALUE=\"form2 ﻓﻲ اﻟﻨﻤﻮذج اﻟﺜﺎﻟﺚ ...>\"<INPUT TYPE=\"hidden\" NAME=\"my forms\" VALUE=\"form3وﺑﺬﻟﻚ ﻋﻨﺪﻣﺎ ﺗﺼﻠﻚ اﻟﺒﯿﺎﻧﺎت اﻟﻤﺮﺳﻠﺔ ﻣﻦ ﻗﺒﻞ أي زاﺋﺮ اﺳﺘﺨﺪم أي ﻣﻦ اﻟﻨﻤﺎذج اﻟﺜﻼﺛﺔ ﺳﯿﺼﻠﻚ أﯾﻀﺎ ﺣﻘﻞ إﺿﺎﻓﻲ ﻗﻤﺖ أﻧﺖ ﻧﻔﺴﻚ ﺑﺘﻌﺒﺌﺘﻪ ﺳﻠﻔًﺎ ﻋﻨﺪﻣﺎ ﺻﻤﻤﺖ اﻟﻨﻤﻮذج وذﻟﻚ ﺑﺄﺣﺪ اﻷﺷﻜﺎل اﻟﺘﺎﻟﯿﺔ: my forms=form1أو my forms=form2أو my forms=form3إذن ﻧﺴﺘﻄﯿﻊ اﻟﻘﻮل أن اﻟﺤﻘﻞ اﻟﻤﺨﻔﻲ ﻫﻮ ﻻﺳﺘﺨﺪام اﻟﻤﺼﻤﻢ وﻟﯿﺲ اﻟﺰاﺋﺮ ،وأن ﻗﯿﻤﺘﻪ ﺗﺪﺧﻞ ﻣﺒﺎﺷﺮة ﻋﻨﺪ اﻟﺘﺼﻤﯿﻢ. وﯾﺴﺘﺨﺪم ﺑﻬﺪف ﺗﻌﺮﯾﻒ ﻗﯿﻢ ﻣﺎ ﺳﯿﺘﻢ إرﺳﺎﻟﻬﺎ ﺟﻨﺒﺎً إﻟﻰ ﺟﻨﺐ ﺿﻤﻦ ﺑﯿﺎﻧﺎت اﻟﻨﻤﻮذج اﻟﺘﻲ ﻗﺎم اﻟﺰاﺋﺮ ﺑﺘﻌﺒﺌﺘﻬﺎﻫﺎم ﺟﺪاﺑﺎﻟﻨﺴﺒﺔ ﻟﻠﻨﻤﺎذج ﺑﺸﻜﻞ ﻋﺎم .ﻣﻦ أﺟﻞ إﻇﻬﺎر اﻟﻨﻤﻮذج ﺑﺼﻮرة ﻣﺮﺗﺒﺔ وﻣﻨﺴﻘﺔ واﻟﺘﺤﻜﻢ ﺑﻤﻮﻗﻊ اﻟﺤﻘﻮل ﻓﯿﻪ ﻓﻤﻦ اﻷﻓﻀﻞ داﺋﻤﺎً وﺿﻌﻪ داﺧﻞ ﺟﺪول ﻣﻊ ﺟﻌﻞ اﻟﺠﺪول ﺑﻼ ﺣﺪود . اﻟﺪرس اﻟﺘﺎﻟﻲ«««ﺗﺎﺑﻊ اﻟﻨﻤﺎذج اﻷﺳﺎﺳﯿﻪ
ﻟﻘﺪ ﻗﻤﻨﺎ ﻓﻲ اﻟﺪرس اﻟﺴﺎﺑﻖ ﺑﻤﻨﺎﻗﺸﺔ اﻟﻮﺳﻮم اﻷﺳﺎﺳﯿﺔ ﻟﻠﻨﻤﺎذج وﺗﻌﻠﻤﻨﺎ ﻛﯿﻔﯿﺔ إدراج اﻟﻨﻤﺎذج ﻓﻲ ﺻﻔﺤﺎت اﻟﻮﯾﺐ. ﻛﻤﺎ ﻗﻤﻨﺎ ﺑﻤﻨﺎﻗﺸﺔ ﺑﻌﺾ أﺷﻜﺎل إدﺧﺎل اﻟﺒﯿﺎﻧﺎت ﻓﻲ اﻟﻨﻤﻮذج وﻫﻲ Text, Password, Hiddenﻫﻞ ﺗﺬﻛﺮ ﻛﯿﻒ ﻧﻘﻮم ﺑﺘﻌﺮﯾﻔﻬﺎ؟ راﺟﻊ اﻟﺪرس اﻟﺴﺎﺑﻖ إن أردت اﻟﻤﺰﯾﺪ ﻣﻦ اﻟﺘﻮﺿﯿﺢ ﻓﻬﺮس اﻟﺼﻔﺤﺔ ] [ Select Boxes Drop-down | CHECKBOX | RADIO أﺳﻮف ﻧﺘﺎﺑﻊ اﻵن ﻣﻊ ﻣﺠﻤﻮﻋﺔ ﻣﻦ اﻷﺷﻜﺎل اﻟﺨﺎﺻﺔ ﺑﺎﻻﺧﺘﯿﺎر ﻣﻦ ﻣﺘﻌﺪد وﻫﻲ ﺑﺎﻟﻤﻨﺎﺳﺒﺔ ﺛﻼﺛﺔ أﻧﻮاع،Radio : CheckboxوBoxes Select down-Drop RADIO ﻧﺒﺪأ ﻣﻊ اﻟﺸﻜﻞ اﻟﻤﺴﻤﻰ .RADIOوﻣﻦ ﻣﺴﻮﻏﺎت اﺳﺘﺨﺪام ﻫﺬا اﻟﺸﻜﻞ أن اﻟﺴﺆال اﻟﻤﻄﺮوح ﯾﻨﺒﻐﻰ أن ﯾﻜﻮن ﻟﻪ إﺟﺎﺑﺔ واﺣﺪة ﻓﻘﻂ ،أو ﺑﻌﺒﺎرة أﺧﺮى ﻋﻠﻰ اﻟﺰاﺋﺮ أن ﯾﺨﺘﺎر إﺟﺎﺑﺔ واﺣﺪة ﻓﻘﻂ .و ﯾﻜﻮن اﻟﻮﺳﻢ ﺑﻬﺬا اﻟﺸﻜﻞ>\"<input type=\"radio وﻛﻤﺜﺎل ،ﻟﻨﻔﺮض أﻧﻨﻲ أرﯾﺪ أن أﺳﺄل اﻟﺰاﺋﺮ ﻋﻦ اﻟﻠﻮن اﻟﻤﻔﻀﻞ ﻟﺪﯾﻪ ﻟﻜﻦ ﺑﺪﻻ ﻣﻦ أن ﯾﻜﻮن ﻋﻠﻰ ﺷﻜﻞ ﻗﺎﺋﻤﺔ إﺧﺘﯿﺎر أرﯾﺪه أن ﯾﻜﻮن ﻋﻠﻰ ﺷﻜﻞ RADIOوذﻟﻚ ﺑﺎﻟﺸﻜﻞ اﻟﺘﺎﻟﻲ اﻷﺣﻤﺮ اﻷزرق اﻷﺳﻮد اﻷﺧﻀﺮ ﻓﻜﯿﻒ ﻧﻨﺸﻲء ﻣﺜﻞ ﻫﺬه اﻟﻘﺎﺋﻤﺔ؟ ﻫﺬا ﻫﻮ وﺳﻢ ﻫﺬه اﻟﻘﺎﺋﻤﺔ><formاﻷﺧﻀﺮ>\"<input name=\"color\" type=\"radio\" value=\"Greenاﻷﺳﻮد>\"<input name=\"color\" type=\"radio\" value=\"blackاﻷزرق>\"<input name=\"color\" type=\"radio\" value=\"blueاﻷﲪﺮ>\"<input name=\"color\" type=\"radio\" value=\"red></form ﻧﺤﺘﺎج اﻵن إﻟﻰ ﺗﺴﻤﯿﺔ ﻫﺬه اﻟﻤﺪﺧﻼت ،أي أﻧﻨﺎ ﺳﻨﺴﺘﺨﺪم اﻟﺨﺎﺻﯿﺔ NAMEﻣﻌﻬﺎ .أﻣﺎ اﻻﺳﻢ اﻟﻤﻌﻄﻰ ﺑﺤﺪ ذاﺗﻪ ﻓﻤﻦ اﻷﻓﻀﻞ أن ﯾﻜﻮن ﻣﺮﺗﺒﻄﺎً ﻧﻮﻋﺎً ﻣﺎ ﺑﻤﻮﺿﻮع اﻟﺴﺆال ،ﻟﯿﺲ ﻷن ﻫﺬا ﺿﺮوري ﻟﻠﻨﻤﻮذج ﺑﻞ ﻫﻮ ﺿﺮوري ﻟﻚ ﻛﺸﺨﺺ ﺳﯿﻘﻮم ﺑﺎﺳﺘﻘﺒﺎل اﻟﺒﯿﺎﻧﺎت اﻟﻤﺮﺳﻠﺔ ﻣﻦ ﺧﻼل اﻟﻨﻤﻮذج ،وﺑﺎﻟﺘﺎﻟﻲ ﻣﻦ اﻷﻓﻀﻞ أن ﯾﻮﺟﺪ ﻋﻨﻮان ﻣﻌﺒّﺮ ﻟﻠﺒﯿﺎﻧﺎت ﺑﻐﺮض اﻟﺘﻤﯿﯿﺰ .وﺑﻤﺎ أﻧﻨﺎ ﻫﻨﺎ ﻧﺘﺤﺪث ﻋﻦ اﻷﻟﻮان ﻓﻠﯿﻜﻦ ﻫﺬا اﻻﺳﻢ ﻫﻮ Colorاﻛﻤﺎ ﻗﻤﻨﺎ ﺑﺈﻋﻄﺎء ﻗﯿﻤﺔ ﻟﻜﻞ ﻣﺪﺧﻠﺔ ﻓﻲ ﻫﺬه اﻟﻘﺎﺋﻤﺔ وذﻟﻚ ﺣﺴﺐ ﻣﺎ ﻧﺮاه ﻣﻨﺎﺳﺒًﺎ،و إﺳﺘﺨﺪاﻣﻨﺎ ﻟﺬﻟﻚ اﻟﺨﺎﺻﯿﺔ ، VALUEﻟﺬﻟﻚ ﺑﻘﻰ ﻋﻠﯿﻨﺎ ﺗﻌﺮﯾﻒ ﻛﻞ ﺣﻘﻞ ﺑﺎﺳﻢ ﺻﺮﯾﺢ ﯾﻮﺿﺢ ﻣﺤﺘﻮاه ﻟﻠﺰاﺋﺮ و ﻫﻮ اﺳﻤﺎء اﻷﻟﻮان ﻗﺒﻞ اﻟﻮﺳﻢ راﺟﻊ اﻟﻔﺼﻞ اﻟﺴﺎﺑﻖ وﻫﻨﺎك ﺧﺎﺻﯿﺔ ﺗﺘﻌﻠﻖ ﺑﻬﺬا اﻟﻨﻮع ﻣﻦ اﻟﺤﻘﻮل ،وﻫﻲ أﻧﻚ إذا أردت أن ﯾﻈﻬﺮ أﺣﺪﻫﺎ وﻗﺪ ﺗﻢ اﺧﺘﯿﺎره ﺑﺸﻜﻞ ﺗﻠﻘﺎﺋﻲ ﻓﻌﻠﯿﻚ ﺑﺈﺿﺎﻓﺔ اﻟﺨﺎﺻﯿﺔ CHECKEDإﻟﯿﻪ ،ﻣﻊ ﺗﺮك ﻛﻞ اﻟﺤﺮﯾﺔ ﻟﻠﺰاﺋﺮ ﻓﻲ اﺧﺘﯿﺎر ﻣﺎ ﯾﺮﯾﺪه ﻓﯿﻤﺎ ﺑﻌﺪ.><formاﻷﺧﻀﺮ><input name=\"color\" type=\"radio\" value=\"Green\" CHECKED
اﻷﺳﻮد>\"<input name=\"color\" type=\"radio\" value=\"blackاﻷزرق>\"<input name=\"color\" type=\"radio\" value=\"blueاﻷﲪﺮ>\"<input name=\"color\" type=\"radio\" value=\"red></form اﻷﺧﻀﺮ اﻷﺳﻮد اﻷزرق اﻷﺣﻤﺮ وأﺧﯿﺮًا ...أود أن أوﺿﺢ ﻟﻚ اﻟﺼﻮرة اﻟﺘﻲ ﯾﺼﻠﻚ ﺑﻬﺎ اﻟﻨﻤﻮذج ﻋﻨﺪ اﺧﺘﯿﺎر أﺣﺪ ﺣﻘﻮﻟﻪ )وﻟﻨﻔﺘﺮض أﻧﻪ اﻟﺨﯿﺎر اﻟﺜﺎﻟﺚ( .وﻫﻲ ﺑﺎﻟﺸﻜﻞ اﻟﺘﺎﻟﻲ: Color=blue CHECKBOX ﻧﺄﺗﻲ اﻵن إﻟﻰ اﻟﺸﻜﻞ اﻟﺜﺎﻧﻲ ﻣﻦ أﺷﻜﺎل اﻹﺧﺘﯿﺎر ﻣﻦ ﻣﺘﻌﺪد واﻟﺬي ﯾﺪﻋﻰ .CHECKBOXﻇﺎﻫﺮﯾًﺎ ﻻ ﯾﺨﺘﻠﻒ ﻫﺬا اﻟﺸﻜﻞ ﻋﻦ اﻟﺸﻜﻞ اﻟﺬي ﺳﺒﻘﻪ ،ﻟﻜﻦ ﻋﻤﻠﯿﺎً ﻫﻨﺎك اﺧﺘﻼﻓﺎت ﺟﺬرﯾﺔ ﻣﻦ ﺣﯿﺚ اﻟﻤﻔﻬﻮم واﻟﺘﻌﺮﯾﻒ.>\"<input type=\"checkbox وﻛﻤﺜﺎل ،ﻟﻨﻔﺮض أﻧﻨﻲ أرﯾﺪ أن أﺳﺄل اﻟﺰاﺋﺮ ﻋﻦ اﻟﺒﺮاﻣﺞ اﻟﻤﻔﻀﻠﻪ ﻟﺪﯾﻪ :Winamp Photoshop ACDSee Allﻗﺒﻞ أن ﻧﺴﺘﻤﺮ ﻗﻢ ﺑﺎﻟﻨﻘﺮ ﻋﻠﻰ أﻛﺜﺮ ﻣﻦ ﺣﻘﻞ ﻓﻲ اﻟﻘﺎﺋﻤﺔ اﻟﺴﺎﺑﻘﺔ وأﻧﻈﺮ ﻣﺎذا ﺳﯿﺤﺪث؟ إن ﺑﺎﺳﺘﻄﺎﻋﺘﻚ اﺧﺘﯿﺎر أﻛﺜﺮ ﻣﻦ ﺣﻘﻞ ﻓﻲ ﻧﻔﺲ اﻟﻮﻗﺖ! وﻫﺬا ﻫﻮ اﻟﻔﺮق اﻷول ﺑﯿﻦ CHECKBOXو RADIOﻓﻔﻲ RADIOﯾﻤﻜﻦ اﺧﺘﯿﺎر ﺣﻘﻞ واﺣﺪ ﻓﻘﻂ ﻟﯿﺲ أﻛﺜﺮ. ﻟﻨﻘﻢ اﻵن ﺑﺘﻌﺮﯾﻒ ﻫﺬه اﻟﺤﻘﻮل ،وﺗﺴﻤﯿﺘﻬﺎ ﺑﺸﻜﻞ ﻣﺒﺎﺷﺮ وﻣﻦ ﺛﻢ ﺳﻨﻌّﻠﻖ ﻋﻠﯿﻬﺎ:<input type=\"checkbox\" name=\"ws\" value=\"yes\">Winamp<input type=\"checkbox\" name=\"ps\" value=\"yes\">Photoshop<input type=\"checkbox\" name=\"acd\" value=\"yes\">ACDSee<input type=\"checkbox\" name=\"all\" value=\"yes\">Allﻣﺎذا ﺗﻼﺣﻆ؟ أوﻻً ﻟﻘﺪ أﺳﻨﺪﻧﺎ اﻟﻘﯿﻤﺔ checkboxﻟﻠﺨﺎﺻﯿﺔ .TYPEﺛﻢ أﻋﻄﯿﻨﺎ ﻟﻜﻞ ﺣﻘﻞ ﻓﻲ اﻟﻘﺎﺋﻤﺔ إﺳﻤًﺎ ﻣﻤﯿﺰاًﻓﻲ اﻟﺨﺎﺻﯿﺔ NAMEﯾﺨﺘﻠﻒ ﻋﻦ ﺑﺎﻗﻲ اﻟﺤﻘﻮل .أﻣﺎ اﻟﺨﺎﺻﯿﺔ VALUEﻓﺄﻋﻄﯿﻨﺎﻫﺎ ﻗﯿﻤﺔ ﻣﻮﺣﺪة ﻟﺠﻤﯿﻊ اﻟﺤﻘﻮل. وﺑﺎﻟﻄﺒﻊ ﻗﻤﻨﺎ ﻓﻲ اﻟﻨﻬﺎﯾﺔ ﺑﻜﺘﺎﺑﺔ اﻷﺳﻤﺎء اﻟﺘﻌﺮﯾﻔﯿﺔ ﻟﻜﻞ ﺣﻘﻞ.ﻫﺎم ﺟﺪاﻓﻲ RADIOﻧﺴﺘﻄﯿﻊ اﺧﺘﯿﺎر ﺣﻘﻞ واﺣﺪ ﻓﻘﻂ أﻣﺎ ﻓﻲ CHECKBOXﻓﻨﺨﺘﺎر أﻛﺜﺮ ﻣﻦ ﺣﻘﻞ ،ﻟﺬﻟﻚ ﯾﺴﺘﺨﺪم ﻋﺎدة ﻓﻲ اﻟﺤﺎﻻت اﻟﺘﻲ ﯾﺤﺘﻤﻞ أن ﻧﺤﺼﻞ ﻓﯿﻬﺎ ﻋﻠﻰ ﻋﺪة أﺟﻮﺑﺔ ﻟﻨﻔﺲ اﻟﺴﺆال .ﻓﻲ RADIOﺗﻜﻮن أﺳﻤﺎء اﻟﺤﻘﻮل ﻣﻮﺣﺪة واﻟﻘﯿﻢ ﻣﺨﺘﻠﻔﺔ ،أﻣﺎ ﻓﻲ CHECKBOXﻓﺘﻜﻮن اﻷﺳﻤﺎء ﻣﺨﺘﻠﻔﺔ واﻟﻘﯿﻢ ﻣﻮﺣﺪة ﻛﯿﻒ ﺳﺘﺼﻞ اﻟﺒﯿﺎﻧﺎت؟ ﺣﺴﻨﺎً ﻟﻨﻔﺮض أﻧﻪ ﺗﻢ اﺧﺘﯿﺎر اﻟﺤﻘﻠﯿﻦ اﻟﺜﺎﻧﻲ واﻟﺮاﺑﻊ ﻓﺴﻮف ﺗﺼﻠﻚ اﻟﻨﺘﯿﺠﺔ ﺑﺎﻟﺸﻜﻞ اﻟﺘﺎﻟﻲ:
ps=Yes all=Yes ﻛﻤﺎ ﻧﺴﺘﻄﯿﻊ أﯾﻀﺎً ﺗﻌﻠﯿﻢ ﺑﻌﺾ اﻟﺤﻘﻮل ﺑﺼﻮرة ﺗﻠﻘﺎﺋﯿﺔ ﻛﻤﺎ ﻓﻌﻠﻨﺎ ﻣﻊ RADIOﺑﺎﺳﺘﺨﺪام ﻧﻔﺲ اﻟﺨﺎﺻﯿﺔ CHECKED<input type=\"checkbox\" name=\"ws\" value=\"yes\" CHECKED>Winamp<input type=\"checkbox\" name=\"ps\" value=\"yes\">Photoshop<input type=\"checkbox\" name=\"acd\" value=\"yes\" CHECKED>ACDSee<input type=\"checkbox\" name=\"all\" value=\"yes\">AllWinamp Photoshop ACDSee All Drop-down Select Boxes اﻟﻨﻮع اﻟﺜﺎﻟﺚ ﻣﻦ أﺷﻜﺎل اﻹﺧﺘﯿﺎر ﻣﻦ ﻣﺘﻌﺪد ﻫﻮ ﻗﻮاﺋﻢ اﻻﺧﺘﯿﺎرأو ،Boxes Select Drop-downوﻫﺬا اﻟﻨﻮع ﺳﻮف ﯾﻘﻮدﻧﺎ إﻟﻰ وﺳﻮم ﺟﺪﯾﺪة ﻣﻦ وﺳﻮم اﻟﺘﻌﺮﯾﻒ واﻟﺘﻲ ﺳﺘﺴﺘﺨﺪم ﺑﺪ ًﻻ ﻣﻦ > <INPUTوﻫﻲ><SELECT ><OPTION></SELECT ﺑﺤﯿﺚ أن > <SELECT/> ... <SELECTﺗﺤﺪدان ﺑﺪاﯾﺔ وﻧﻬﺎﯾﺔ اﻟﻘﺎﺋﻤﺔ ،واﻟﻮﺳﻢ > <OPTIONاﻟﺬيﯾﻮﺿﻊ داﺋﻤﺎ ﺑﯿﻨﻬﻤﺎ ﯾﺴﺘﺨﺪم ﻟﺘﺤﺪﯾﺪ ﻛﻞ ﻋﻨﺼﺮ ﻣﻦ ﻋﻨﺎﺻﺮ اﻟﻘﺎﺋﻤﺔ .ﻟﻨﻌﺪ إﻟﻰ ﻣﺜﺎﻟﻨﺎ اﻟﺴﺎﺑﻖ ﻟﻨﺮى ﻛﯿﻒ ﯾﻤﻜﻦ وﺿﻊ اﻟﺨﯿﺎرات ﻓﻲ ﻗﺎﺋﻤﺔ><FORM><SELECT <OPTION> Winamp <OPTION>Photoshop <OPTION> ACDSee <OPTION> All></SELECT></FORM وﺑﺬﻟﻚ ﺗﻜﻮن اﻟﻨﺘﯿﺠﺔ ﻫﻲ: Winampوﻛﺎﻟﻤﻌﺘﺎد ﻻ ﯾﺨﻠﻮ اﻷﻣﺮ ﻣﻦ وﺟﻮد ﺧﺼﺎﺋﺺ ﺗﺤﺪد ﻃﺮﯾﻘﺔ ﻋﻤﻞ ﻫﺬه اﻟﻮﺳﻮم .وﻫﻨﺎك ﺧﺼﺎﺋﺺ ﻣﺸﺘﺮﻛﺔ ﻋﺮﻓﻨﺎﻫﺎ ﻓﻲ اﻷﺷﻜﺎل اﻟﺴﺎﺑﻘﺔ ﺳﯿﺘﻢ اﺳﺘﺨﺪاﻣﻬﺎ ﻫﻨﺎ أﯾﻀﺎً ﻛﻤﺎ ﯾﻮﺟﺪ ﺧﺼﺎﺋﺺ ﺟﺪﯾﺪة ﺗﺘﻌﻠﻖ ﻓﻘﻂ ﺑﻬﺬا اﻟﺸﻜﻞ ﻣﻦ ﺣﻘﻮل اﻟﺒﯿﺎﻧﺎت .ﻓﺒﺎﻟﻨﺴﺒﺔ ﻟـِ > <SELECTﯾﻮﺟﺪ اﻟﺨﺎﺻﯿﺔ NAMEوﻫﻲ ﻛﻤﺎ ﺗﻌﻠﻢ ﺗﺤﺪد اﺳﻢ اﻟﻘﺎﺋﻤﺔ .ﻛﻤﺎ ﺗﻮﺟﺪ اﻟﺨﺎﺻﯿﺔ SIZEاﻟﺘﻲ ﺗﺤﺪد ﺣﺠﻢ )أو ﺑﺎﻷﺣﺮى( ارﺗﻔﺎع اﻟﻘﺎﺋﻤﺔ ،وﺑﺎﻟﺘﺎﻟﻲ ﻋﺪد اﻟﺒﯿﺎﻧﺎت اﻟﻈﺎﻫﺮة ﻓﯿﻬﺎ .وﻫﻲ ﺗﺄﺧﺬ أي ﻗﯿﻤﺔ ﻋﺪدﯾﺔ ﺻﺤﯿﺤﺔ. ><FORM>\"<SELECT NAME=\"browser\" SIZE=\"2 <OPTION> Winamp <OPTION>Photoshop
<OPTION> ACDSee <OPTION> All></SELECT</FORM Winamp Photoshopوﻃﺎﻟﻤﺎ ﺑﺎﻹﻣﻜﺎن ﻋﺮض اﻟﻘﺎﺋﻤﺔ ﺑﺄي ارﺗﻔﺎع ﻧﺮﯾﺪ ،وﻗﺪ ﯾﺼﻞ إﻟﻰ ﺣﺪ ﻋﺮض ﺟﻤﯿﻊ ﺑﯿﺎﻧﺎت اﻟﻘﺎﺋﻤﺔ ﻣﻌًﺎ ،ﻓﺈن ﻫﻨﺎك إﻣﻜﺎﻧﯿﺔ أﯾﻀﺎً ﻟﺠﻌﻞ اﺧﺘﯿﺎر اﻟﺒﯿﺎﻧﺎت ﻣﻦ ﻫﺬه اﻟﻘﺎﺋﻤﺔ ﻣﺘﻌﺪداً وﻟﯿﺲ ﻓﻘﻂ ﻗﯿﻤﺔ واﺣﺪة ،ﻛﯿﻒ؟؟ ﺑﺈﺿﺎﻓﺔ اﻟﺨﺎﺻﯿﺔ MULTIPLEﻟﻨﻘﻢ اﻵن ﺑﻌﺮض ﺟﻤﯿﻊ اﻟﻘﯿﻢ )ﻟﺪﯾﻨﺎ أرﺑﻌﺔ ﻗﯿﻢ ،إذن اﻟﻘﯿﻤﺔ اﻟﻤﻜﺘﻮﺑﺔ ﻣﻊ SIZEﯾﺠﺐ أن ﺗﻜﻮن ،(٤وﻣﻦ ﺛﻢ ﻟﻨﺘﺢ اﻟﻤﺠﺎل أﻣﺎم اﻟﺰاﺋﺮ ﻻﺧﺘﯿﺎر أﻛﺜﺮ ﻣﻦ ﻗﯿﻤﺔ واﺣﺪة ﻓﻲ اﻟﻘﺎﺋﻤﺔ. ><FORM><SELECT NAME=\"browser\" SIZE=\"4\" MULTIPLE <OPTION> Winamp <OPTION>Photoshop <OPTION> ACDSee <OPTION> All></SELECT</FORM Winamp Photoshop ACDSee All.ﺑﺼﻮرة ﻣﺘﻮاﺻﻠﺔ أﺛﻨﺎء ﻋﻤﻠﯿﺔ اﻹﺧﺘﯿﺎر ctrlﻻﺣﻆ أﻧﻪ ﻷداء ﻋﺪة اﺧﺘﯿﺎرات ﯾﺠﺐ أن ﺗﻘﻮم ﺑﺎﻟﻀﻐﻂ ﻋﻠﻰ اﻟﻤﻔﺘﺎح أﻣﺎ اﻟﺨﺼﺎﺋﺺ اﻟﻤﺴﺘﺨﺪﻣﺔ ﻣﻊ اﻟﻮﺳﻢ > <OPTIONﻓﻬﻲ VALUEواﻟﺘﻲ اﺳﺘﺨﺪﻣﻨﺎﻫﺎ ﻣﻦ ﻗﺒﻞ وﺳﻨﺴﺘﺨﺪﻣﻬﺎ اﻵن ﻹﻋﻄﺎء ﻗﯿﻤﺔ ﻟﻜﻞ ﺣﻘﻞ ﺑﯿﺎﻧﺎت ﻓﻲ اﻟﻘﺎﺋﻤﺔ .وﻛﺬﻟﻚ اﻟﺨﺎﺻﯿﺔ SELECTEDواﻟﺘﻲ ﻧﻜﺘﺒﻬﺎ ﻣﻊ أي > <OPTIONﻧﺮﯾﺪ أن ﯾﻈﻬﺮ وﻗﺪ ﺗﻢ اﺧﺘﯿﺎره ﺑﺼﻮرة ﺗﻠﻘﺎﺋﯿﺔ .><FORM><SELECT NAME=\"browser\" SIZE=\"4\" MULTIPLE <OPTION VALUE=\"wa\"> Winamp <OPTION VALUE=\"ps\" SELECTED>Photoshop <OPTION VALUE=\"acd\"> ACDSee <OPTION VALUE=\"all\"> All></SELECT></FORM Winamp Photoshop ACDSee All اﻟﺸﻜﻞ اﻟﺘﺎﻟﻲ ﻣﻦ أﺷﻜﺎل ﺣﻘﻮل اﻟﺒﯿﺎﻧﺎت ﯾﺪﻋﻰ TEXTAREA وﻫﻮ اﻟﻤﺴﺘﺨﺪم ﻋﺎدة ﻟﻜﺘﺎﺑﺔ اﻟﺘﻌﻠﯿﻘﺎت اﻟﺤﺮة ﻓﻲ اﻟﻨﻤﻮذج وﯾﺘﻢ إدراﺟﻪ ﺑﻜﺘﺎﺑﺔ اﻟﻮﺳﻮم ><TEXTAREA> ... </TEXTAREA
ﻫﻞ ﺗﺴﺘﻄﯿﻊ ﺗﺨﻤﯿﻦ اﻟﺨﺼﺎﺋﺺ اﻟﻤﺴﺘﺨﺪﻣﺔ ﻣﻌﻪ؟ ﺑﺎﻟﻄﺒﻊ ﻻ ﺑﺪ ﻣﻦ وﺟﻮد اﻟﺨﺎﺻﯿﺔ NAMEﻹﻋﻄﺎءه اﺳﻢ اﻟﺘﻌﺮﯾﻒ .ﻟﻜﻦ ﻻ وﺟﻮد ﻟﻠﺨﺎﺻﯿﺔ ، VALUEوﺑﺎﻟﻤﻘﺎﺑﻞ ﻓﺈن أي ﻧﺺ ﯾﻜﺘﺐ ﺑﯿﻦ اﻟﻮﺳﻤﯿﻦ ﺳﯿﺘﻢ ﻋﺮﺿﻪ داﺧﻞ اﻟﺤﻘﻞ ﺑﺼﻮرة ﺗﻠﻘﺎﺋﯿﺔ>\"<TEXTAREA NAME=\"comments) :ﻓﻀﻠﻚ ﺿﻊ ﺗﻌﻠﯿﻘﻚ ﻫﻨﺎ أﻫﻼ ﺑﻚ ﻣﻦ></TEXTAREA ﻫﻼ ﺑﻚ ﻣﻦ ﻓﻀﻠﻚ ﺿ ﻊ ﺗﻌﻠﯿﻘﻚ ﻫﻨ ﺎ (: ROWSاﻟﺘﻲ ﺗﺤﺪد اﻟﻌﺮض و COLSﻛﻤﺎ ﺗﻮﺟﺪ ﺧﺼﺎﺋﺺ ﻟﺘﺤﺪﯾﺪ ﻣﺴﺎﺣﺔ ﻫﺬا اﻟﺤﻘﻞ ﻋﺮﺿًﺎ وارﺗﻔﺎﻋًﺎ ،وﻫﻲ اﻟﺘﻲ ﺗﺤﺪد اﻹرﺗﻔﺎع>\"<TEXTAREA NAME=\"comments\" COLS=\"30\" ROWS=\"6></TEXTAREAاﻟﺘﻲ ﺗﺤﺪد ﻃﺮﯾﻘﺔ إﻟﺘﻔﺎف اﻟﻨﺺ اﻟﻤﻜﺘﻮب داﺧﻞ اﻟﺤﻘﻞ وﻫﻨﺎك ﺛﻼﺛﺔ ﻗﯿﻢ WRAPأﻣﺎ اﻟﺨﺎﺻﯿﺔ اﻷﺧﯿﺮة ﻫﻨﺎ ﻓﻬﻲ ﺗﺄﺧﺬﻫﺎ وﻫﻲ ﻋﻠﻰ اﻟﻨﺤﻮ اﻟﺘﺎﻟﻲ: : virtualاﻟﺘﻲ ﺗﻌﻨﻲ أن اﻟﻨﺺ ﺳﯿﻠﺘﻒ ﻋﻠﻰ ﻋﺪة أﺳﻄﺮ ﻋﻨﺪ ﻛﺘﺎﺑﺘﻪ وﻟﻜﻨﻪ ﺳﯿﺼﻠﻚ ﻋﻨﺪ إرﺳﺎﻟﻪ ﻋﻠﻰ ﺷﻜﻞ ﺳﻄﺮ واﺣﺪ ﻣﺘﺘﺎﺑﻊ )ﺣﺎول اﻟﻜﺘﺎﺑﺔ داﺧﻞ اﻟﺤﻘﻮل وأﻧﻈﺮ ﻛﯿﻔﯿﺔ ﺗﺄﺛﯿﺮ ﻫﺬه اﻟﺨﺎﺻﯿﺔ ﻋﻠﻰ ﻛﻞ ﻣﻨﻬﺎ(>\"<TEXTAREA NAME=\"comments\" COLS=\"30\" ROWS=\"6\" WRAP=\"virtual></TEXTAREA :ﺗﻌﻨﻲ أن اﻟﻨﺺ ﺳﯿﻠﺘﻒ ﻋﻠﻰ ﻋﺪة أﺳﻄﺮ وﺳﯿﺼﻠﻚ أﯾﻀﺎً ﻋﻠﻰ ﻫﺬا اﻟﻨﺤﻮ ﻋﻨﺪ إرﺳﺎﻟﻪ physical>\"<TEXTAREA NAME=\"comments\" COLS=\"30\" ROWS=\"6\" WRAP=\"physical></TEXTAREA
:ﺗﻌﻨﻲ أن اﻟﻨﺺ ﻟﻦ ﯾﻠﺘﻒ ﺑﺼﻮرة ﺗﻠﻘﺎﺋﯿﺔ ﻋﻠﻰ ﻋﺪة أﺳﻄﺮ ﻟﻜﻨﻪ ﻋﻠﻰ أﯾﺔ ﺣﺎل ﺳﯿﺼﻠﻚ ﺑﻨﻔﺲ اﻟﺸﻜﻞ اﻟﺬي ﺗﻢ off إدﺧﺎﻟﻪ ﺑﻪ>\"<TEXTAREA NAME=\"comments\" COLS=\"30\" ROWS=\"6\" WRAP=\"off></TEXTAREA ﺣﺴﻨﺎً ،ﺑﺎﻓﺘﺮاض أﻧﻨﺎ إﻧﺘﻬﯿﻨﺎ ﻣﻦ ﻛﺘﺎﺑﺔ اﻟﺸﯿﻔﺮة اﻟﺨﺎﺻﺔ ﺑﺎﻟﻨﻤﻮذج وﻧﻨﺘﻈﺮ ﻣﻦ أي زاﺋﺮ ﻟﻠﻤﻮﻗﻊ أن ﯾﻤﻸه ،واﻟﺴﺆال ﻫﻮ ﻛﯿﻒ ﯾﻤﻜﻦ ﻟﻪ أن ﯾﺮﺳﻠﻪ ﻓﻌﻠﯿﺎً؟ ﻧﻌﻮد اﻵن إﻟﻰ اﻟﻮﺳﻢ > <INPUTوﻫﺬه اﻟﻤﺮة ﻣﻊ اﻟﻨﻮع submitواﻟﺘﻲ ﺳﺘﻘﻮم ﺗﻠﻘﺎﺋﯿﺎً ﺑﺈﻧﺸﺎء زر ﺳﯿﻘﻮم ﻋﻨﺪ اﻟﻨﻘﺮ ﻋﻠﯿﻪ ﺑﺈرﺳﺎل اﻟﺒﯿﺎﻧﺎت اﻟﺘﻲ ﺗﻢ ﻣﻠﺆﻫﺎ ﻓﻲ اﻟﻨﻤﻮذج.>\"<INPUT TYPE=\"submit Submit Query( ﻇﺎﻫﺮة ﻋﻠﻰ اﻟﺰر وﻫﻲ اﻟﻌﺒﺎرة Netscapeﻓﻲ Submit Queryأو ) Submitﻻﺣﻆ أن اﻹﻓﺘﺮاﺿﯿﺔ ،ﻓﺈذا أردت ﺗﻐﯿﯿﺮﻫﺎ ﻓﻌﻠﯿﻚ ﺑﺎﺳﺘﺨﺪام اﻟﺨﺎﺻﯿﺔ VALUEﻟﻬﺬا اﻟﻐﺮض>\"ﻣﻦ ﻓﻀﻠﻚ أرﺳﻞ ﱄ\"=<INPUT TYPE=\"submit\" VALUE ﻣﻦ ﻓﻀﻠﻚ أرﺳﻞ ﻟﻲي ﺣﺎﻟﺔ ﻛﺎن زوار ﻣﻮﻗﻌﻚ ﻣﻦ اﻟﻨﻮﻋﯿﺔ اﻟﻤﺘﺮددة ﻣﻦ اﻟﻨﺎس واﻟﺬﯾﻦ ﻗﺪ ﯾﻐﯿﺮون آراﺋﻬﻢ ﻓﻲ آﺧﺮ ﻟﺤﻈﺔ ،ﯾﻤﻜﻨﻚ أن ﺗﺘﯿﺢ ﻟﻬﻢ إﻣﻜﺎﻧﯿﺔ ﻣﺴﺢ ﻣﺎ ﻛﺘﺒﻮه ﻓﻲ اﻟﻨﻤﻮذج وإﻟﻐﺎء اﻷﻣﺮ ،وذﻟﻚ ﺑﺎﺳﺘﺨﺪام resetﻛﻨﻮع TYPEﻟﻠﻮﺳﻢ > <INPUTﺑﻨﻔﺲ ﻃﺮﯾﻘﺔ اﻟﺘﻌﺮﯾﻒ واﻟﺨﺼﺎﺋﺺ اﻟﻤﺴﺘﺨﺪﻣﺔ ﻣﻊ .submit>\"أﻣﺴﺢ اﳊﻘﻮل\"=<INPUT TYPE=\"reset\" VALUE أﻣﺴﺢ اﻟﺤﻘ ﻮل
واﻟﺬي ﯾﻘﻮم ﺑﺈﻧﺸﺎء زر buttonﻫﻮ > <INPUTاﻟﺸﻜﻞ اﻷﺧﯿﺮ ﻣﻦ أﺷﻜﺎل اﻟﺒﯿﺎﻧﺎت ﻓﻲ اﻟﻨﻤﺎذج واﻟﻤﺪرج ﻣﻊ اﻟﻮﺳﻢ ﺿﻤﻦ اﻟﻨﻤﻮذج ،وﻫﻮ ﻣﺮﺗﺒﻂ ﺑﺎﻟﻨﻤﺎذج اﻟﺘﻲ ﺗﺤﺘﻮي ﻋﻠﻰ ﻧﺼﻮص ﺑﺮﻣﺠﯿﺔ )أو ﺑﺮاﻣﺞ ﻣﻜﺘﻤﻠﺔ( ﻣﻦ ﻟﻐﺎت ﻣﺘﻘﺪﻣﺔ ﻣﺜﻞ JavaScriptﻛﻮﻧﻪ ﯾﺴﺘﺨﺪم ﻟﺘﺸﻐﯿﻞ ﻫﺬه اﻟﺒﺮاﻣﺞ وإﻃﻼﻗﻬﺎ .وﻃﺒﻌًﺎ ﻫﻨﺎك ﻃﺮق ﻣﻌﯿﻨﺔ ﻟﺮﺑﻄﻬﺎ ﻣﻊ اﻟﺒﺮاﻣﺞ وﻟﯿﺲ ﻫﻨﺎ اﻟﻤﺠﺎل ﻟﻄﺮﺣﻬﺎ .ﻟﻜﻦ ﻣﺒﺪﺋﯿًﺎ أﻗﻮل إن ﻃﺮﯾﻘﺔ اﻹدراج واﻟﺘﻌﺮﯾﻒ ﻫﻲ ذاﺗﻬﺎ اﻟﻤﺴﺘﺨﺪﻣﺔ ﻣﻊ reset, submit.>\" buttonﻫﺬا ﻣﺜﺎل ﻟﻠﺰر أو\"=<INPUT TYPE=\"button\" VALUE اﻟﺪرس اﻟﺘﺎﻟﻲ««« ﺗﻨﺴﯿﻖ اﻟﻨﻤﺎذج ﺳﻨﺘﺤﺪث ﻓﻲ ﻫﺬا اﻟﻔﺼﻞ ﻋﻦ ﻛﯿﻔﯿﻪ ﺗﻨﺴﯿﻖ اﻟﻨﻤﺎذج ﻓﻬﺮس اﻟﺼﻔﺤﺔ ] [ LABEL | ACCESSKEY | LEGEND & FIELDSET | TABINDEX TABINDEX ﯾﺠﺐ أن ﺗﻌﻠﻢ أﻧﻪ ﯾﻤﻜﻨﻚ أن ﺗﻮﺟﻪ زوارك أﻟﻲ أﻣﺎﻛﻦ ﻣﻌﯿﻨﻪ ﺑﺈﺳﺘﺨﺪام اﻟﻤﻔﺘﺎح ) Tabاﻟﻤﻮﺟﻮد ﻓﻮق ﻣﻔﺘﺎح ال (Lock Capsﻓﻲ اﻟﻄﺒﯿﻌﻲ ﻋﻨﺪ اﻟﻀﻐﻂ ﻋﻠﻲ ﻣﻔﺘﺎح ال Tabﯾﻨﻘﻞ ﺑﯿﻦ أﺟﺰاء اﻟﻨﻤﻮذج ﺑﺎﻟﺘﺴﻠﺴﻞ ﻟﻜﻦ ﻣﻊاﻟﺨﺎﺻﯿﻪ TABINDEXﯾﻤﻜﻨﻚ ﻓﻲ اﻟﺘﺤﻜﻢ ﻓﻲ أي ﻣﻦ اﻷﺟﺰاء ﻓﻲ اﻟﻨﻤﻮزج ﺗﻮد أن ﯾﺬﻫﺐ ﻟﻬﺎ اﻟﺰاﺋﺮ اﻷول و إﻟﯿﻚ ﻫﺬا اﻟﻤﺜﺎل ﺿﻌﻚ ﻣﺆﺷﺮ اﻟﻔﺄرة ﻓﻲ أول ﺻﻨﺪوق وأﺿﻐﻂ اﻟﺰر Tabﻣﺎذا ﺗﻼﺣﻆ Box 1Box 3Box 4Box 2و ﺳﺘﺠﺪ اﻟﻤﺴﺘﻌﺮض ﯾﺘﺤﺮك إﻟﻲ اﻟﻮﺻﻼت ،ﺑﺎﻟﻄﺒﻊ ﯾﻤﻜﻨﻚ إﺳﺘﺨﺪام اﻟﺨﺎﺻﯿﻪ Tabأﺳﺘﻤﺮ ﻓﻲ ﺿﻐﻂ ﻣﻔﺘﺎح ال TABINDEXﻣﻊ اﻟﻮﺻﻼت وﻟﻜﻦ ﻫﻲ ﻣﻔﯿﺪه أﻛﺜﺮ ﻣﻊ اﻟﻨﻤﺎذج واﻷﺷﻜﺎل وإﻟﯿﻚ اﻟﻮﺳﻢ اﻟﺨﺎص ﺑﺬﻟﻚ><FORM>\"Box 1 <INPUT TYPE=\"text\" NAME=\"TAB1\" TABINDEX=\"1>\"Box 3 <INPUT TYPE=\"text\" NAME=\"TAB2\" TABINDEX=\"3>\"Box 4 <INPUT TYPE=\"text\" NAME=\"TAB3\" TABINDEX=\"4>\"Box 2 <INPUT TYPE=\"text\" NAME=\"TAB4\" TABINDEX=\"2></FORM
و ﯾﺘﺠﻪ اﻟﻤﺆﺷﺮ إﻟﻲ اﻟﻤﻜﺎن اﻟﺬي ﯾﻌﺮف ﺑﻘﯿﻤﻪ أﻋﻠﻲ و ﻫﻜﺬا و ﯾﻤﻜﻦ ان ﺗﻌﻄﻲ ﻗﯿﻤﺔ إﻟﻲ أي ﻋﻨﺼﺮ ﻣﻦ ﻋﻨﺎﺻﺮ اﻟﻨﻤﻮذج . FIELDSETو LEGENDﻫﺬان اﻟﻮﺳﻤﺎن اﻟﺘﻨﻈﯿﻤﯿﯿﻦ اﻟﺠﺪد ﯾﺴﺎﻋﺪوﻧﻚ ﻋﻠﻲ ﺗﻨﻀﯿﻢ ﺷﻜﻞ اﻟﻨﻤﻮذج دون إﺳﺘﺨﺪام اﻟﺠﺪاول ) اﻟﺘﻲ ﻟﺮﺑﻤﺎ ﺗﻌﻄﻲ ﻣﺸﺎﻛﻞ ( Netscapeﯾﺴﺘﻄﯿﻌﺎن ﻫﺬان اﻟﻮﺳﻤﺎن أن ﯾﻘﺴﻤﻮا اﻟﻌﺪﯾﺪ ﻣﻦ اﻟﻤﺴﺎﺣﺎت ﻛﻤﺎ ﺗﺮىاﻟﺸﺨﺼﯿﻪاﻻﺳﻢ اﻟﺒﯿﺎﻧﺎت 1: اﻟﺒﺮﯾﺪ اﻹﻟﯿﻜﺘﺮوﻧﻲ اﻷزرق اﻷﺣﻤﺮ اﻷﺧﻀﺮ 2:اﻷﻟﻮان اﻟﻤﻔﻀﻠﻪ 3:ﻣﻌﻠﻮﻣﺎت اﻹدﺧﺎل Reset Submitﻣﺎرأﯾﻚ ﻣﻦ اﻟﻮاﺿﺢ أﻧﻬﺎ ﻃﺮﯾﻘﻪ ﺟﯿﺪه ﺟﺪا ﻓﻲ ﺗﺠﻤﯿﻊ ﻋﻨﺎﺻﺮ اﻟﻨﻤﻮذج ﻓﻲ ﻣﺠﻤﻮﻋﺎت ﻛﻤﺎ ﯾﻤﻜﻨﻚ ﺗﺼﻨﯿﻔﻬﻤﺎ ﻛﻞ أﺻﻨﺎف ﻣﺘﺸﺎﺑﻪ ﻣﻦ اﻟﻤﻌﻠﻮﻣﺎت ﻓﻲ ﻣﺠﻤﻮﻋﻪ ﺧﺎص ﺑﻬﺎ. أﻧﺖ ﻟﺪﯾﻚ وﺳﻤﯿﻦ اﻟﻮﺳﻢ FIELDSETﯾﻘﻮم ﺑﺈﻧﺸﺎء اﻹﻃﺎر ﺣﻮل اﻟﻨﻤﻮذج و اﻟﻮﺳﻢ LEGENDﯾﻘﻮم ﺑﻜﺘﺎﺑﻪ اﻟﻜﻠﻤﺎت و ﻫﺬا ﻫﻮ ﻃﺮﯾﻘﻪ ﻛﺘﺎﺑﻪ ﻫﺬا اﻟﻮﺳﻢ><FIELDSET></B></LEGENDاﻟﺸﺨﺼﯿﻪ اﻟﺒﯿﺎﻧﺎت <LEGEND><B>1:>\" <INPUT TYPE=\"text\" NAME=\"NAMEاﻻﺳﻢ>\" <INPUT TYPE=\"text\" NAME=\"EMAILاﻟﱪﯾﺪ اﻹﻟﯿﻜﱰوﻧﻲ></FIELDSET ﻣﺎ ﻋﻠﯿﻚ ﻫﻮ ﻓﻘﻂ ﻛﺘﺎﺑﻪ ﺟﻤﯿﻊ اﻟﺒﯿﺎﻧﺎت اﻟﺘﻲ ﺗﺮﯾﺪ ﺗﺠﻤﯿﻌﻬﺎ داﺧﻞ اﻟﻮﺳﻢ FIELDSETو ﺗﻀﯿﻒ وﺳﻢ LEGENDﻓﻲ اﻟﺒﺪاﯾﻪ و ﺗﻘﻮم ﺑﺘﻨﺴﯿﻖ اﻟﻨﺺ ﻛﻤﺎ ﺗﺮﯾﺪ ،ﻛﻤﺎ ﯾﻤﻜﻨﻚ أن ﺗﻠﻮن اﻷﻃﺮ ﺑﺈﺳﺘﺨﺪام CSSو اﻟﺘﻲﺳﻮف ﻧﻘﻮم ﺑﺸﺮﺣﻬﺎ ﻓﻲ اﻟﺘﺤﺪﯾﺜﺎت اﻟﻘﺎدﻣﺔ و ﯾﻤﻜﻨﻚ أﺳﺘﺨﺪام ﺧﺎﺻﯿﻪ ﻣﺤﺎذاة اﻹﻃﺎر إﻟﻲ اﻟﺠﺎﻧﺐ اﻟﺬي ﺗﺮﯾﺪ و ﺗﺄﺧﺬ ﺗﻠﻚ اﻟﻘﯿﻢ LEFT, RIGHT, CENTER, BOTTOMأو TOPﯾﺠﺐ أن ﺗﻌﻠﻢ أن وﺳﻢ FIELDSETﯾﺄﺧﺬ ﺣﺠﻢ اﻟﺸﺎﺷﻪ ﺑﺄﻛﻤﻠﻬﺎ وﻻ ﺗﺴﺘﻄﯿﻊ ﺗﺤﺪﯾﺪ ﻣﺴﺎﺣﻪ ﻣﺤﺪده ﻟﻪ ﻓﻠﺬك ﯾﺠﺐ ﻋﻠﯿﻚ أو ﯾﺴﺘﺤﺴﻦ أن ﺗﻀﻌﻪ ﻓﻲ ﺟﺪول ﺑﺴﯿﻂ ﺣﺘﻲ ﺗﺴﺘﻄﯿﻊ أن ﺗﺴﯿﻄﺮ ﻋﻠﻲ ﺣﺠﻤﻪ ACCESSKEY ﻫﺬه اﻟﺨﺎﺻﯿﻪ ﺗﻤﻜﻨﻚ ﻣﻦ اﻹﻧﺘﻘﺎل إﻟﻲ ﺟﺰء ﻣﻌﯿﻦ ﻓﻲ اﻟﺼﻔﺤﺔ ﺑﺎﻟﻀﻐﻂ ﻋﻠﻲ ﻣﻔﺘﺎح ﻣﻌﯿﻦ ﻣﻊ اﻟﺰر Altﺑﺎﻟﻄﺒﻊ أﻧﺖ ﺗﺮي ﻓﻲ ﺟﻤﯿﻊ ﻧﻮاﻓﺬ اﻟﻮﯾﻨﺪوز واﻟﺒﺮاﻣﺞ اﻟﻌﺎﻣﺔ اﻟﺘﻲ ﺗﺴﺘﻌﻤﻠﻬﺎ ﺧﻂ ﺗﺤﺖ ﺣﺮف ﻣﻦ ﺣﺮوف اﻟﻜﻠﻤﺔ ﻣﺜﻞ ..... Edit Fileإﻟﺦ و ﻫﺬا ﯾﻌﻄﻲ أﻧﻪ ﯾﻮﺟﺪ ﻃﺮﯾﻘﺔ ﻣﺨﺘﺼﺮة ﺗﺴﺘﻄﯿﻊ أن ﺗﺴﺘﺨﺪم ﻫﺬه اﻟﺨﺎﺻﯿﻪ ﺑﺎﻟﻀﻐﻂ ﻋﻠﻲ ﻣﻔﺘﺎح Alt+Fﻓﻬﺬا ﺳﯿﺠﻌﻠﻚ ﺗﺘﺠﻪ إﻟﻲ ﻗﺎﺋﻤﺔ ﻣﻠﻒ وﻫﻜﺬا ،و أﻧﺖ ﺗﺴﺘﻄﯿﻊ أن ﺗﻀﯿﻒ ﻫﺬه اﻟﺨﺎﺻﯿﻪ إﻟﻲ ﻋﻨﺎﺻﺮ اﻟﺸﻜﻞ اﻟﻤﻬﻤﻪ ﻛﻞ ﻣﺎ ﻋﻠﯿﻚ أن ﺗﻀﻊ ﻫﺬه اﻟﺨﺎﺻﯿﻪ ﺑﺠﻮار اﻟﻮﺳﻢ اﻟﺨﺎص ﺑﺎﻟﻨﻤﻮذج أو ﺷﻜﻞ ﻣﻦ أﺷﻜﺎﻟﻪ\"ACCESSKEY=\"X
ﺣﯿﺚ Xﻫﻮ اﻟﺤﺮف اﻟﺬي ﯾﺠﺐ أن ﺗﻀﻐﻂ ﻋﻠﯿﻪ ﻣﻊ Altﻟﻜﻲ ﺗﺬﻫﺐ إﻟﻲ اﻟﻤﺠﻤﻮﻋﻪ اﻟﻬﺎﻣﻪ ﻣﺜﻼ ﻧﺤﻦ ﻧﺴﺘﺨﺪﻣﺔ ﻫﻨﺎ ﻓﻲ ﺻﻨﺪوق اﻟﺒﺤﺚ اﻟﺨﺎص ﺑﺎﻟﻤﻮﻗﻊ ﻓﻘﻂ أﺿﻐﻂ ﻋﻠﻲ Alt+Sﺑﺎﻟﻄﺒﻊ ﻛﻞ اﻟﺰوار واﻟﻘﺮاء اﻟﻤﺤﺘﺮﻓﯿﻦ ﯾﻌﺮﻓﻮن أن اﻟﺨﻂ اﻟﻤﻮﺟﻮد ﺗﺤﺖ اﻟﺤﺮف ﻟﻪ إﺧﺘﺼﺎر أو shortcut LABELﻫﺬه اﻟﺨﺎﺻﯿﻪ ﺗﺠﻌﻞ ﻗﺎدر ﻋﻠﻲ اﻟﻀﻐﻂ ﻋﻠﻲ اﻟﻜﻼﻣﺎت اﻟﻤﺠﺎورة ﻟﺸﻜﻞ ﻣﻌﯿﻦ ﻣﻦ أﺷﻜﺎل اﻟﻨﻤﻮذج ﺑﺪﻻ ﻣﻦ أن ﺗﻀﻐﻂ ﻋﻠﯿﻪ ﻹﺧﺘﯿﺎرة ،وﻟﻠﺘﻮﺿﯿﻊ أﻛﺜﺮ إﻟﯿﻚ ﻫﺬا اﻟﻤﺜﺎل أﺿﻐﻂ ﻫﻨﺎأﺳﻬﻞ اﻟﯿﺲ ﻛﺬﻟﻚ و إﻟﯿﻚ اﻟﻜﻮد اﻟﺨﺎص ﺑﻬﺎ><FORM><LABEL FOR=\"LABELEXAMPLE\">Click here</LABEL>\"<INPUT TYPE=\"checkbox\" NAME=\"CHECK1\" ID=\"LABELEXAMPLE></FORM ﯾﺠﺐ أن ﺗﻀﻊ اﻟﺨﺎﺻﯿﻪ \"....\"=Forﻟﻜﻲ ﺗﻘﻮم ﺑﺘﻌﺮﯾﻒ اﻟﻜﻠﻤﺎت اﻟﺘﻲ ﺳﺘﻜﺘﺐ ﺑﻌﺪﻫﺎ ﺛﻢ ﺗﺤﺪد أي اﻟﺼﻨﺎدﯾﻖ اﻟﺘﻲ ﺳﯿﺘﻢ إﺧﺘﯿﺎرﻫﺎ ﻋﻦ ﻃﺮﯾﻖ \"....\"=IDﻻ ﺑﺪ وأن ﺗﻜﺘﺐ ﺑﯿﻦ اﻟﻘﻮﺳﯿﻦ\" \" ﻧﻔﺲ اﻻﺳﻢ ﺣﺘﻲ ﯾﺴﺘﻄﯿﻊ ان ﯾﺆﺛﺮ ﻓﯿﻬﺎ . اﻟﺪرس اﻟﺘﺎﻟﻲ«««ﺻﻮرة ﻟﻠﺰرSubmit ﯾﻤﻜﻨﻚ أن ﺗﻘﻮم ﺑﺘﻐﯿﯿﺮ ﺷﻜﻞ اﻟﺰر Submitاﻟﺮﻣﺎدي إﻟﻲ ﺻﻮرة ﺟﺬاﺑﻪ ﻣﻦ إﺧﺘﯿﺎرك ﻛﻤﺎ ﻓﻲ ﻫﺬا اﻟﺸﻜﻞ ﻣﺎ اﺳﻤﻚ ؟ ﻣﺎ ﻫﻲ وﺟﻬﺔ ﻧﻈﺮك؟ﯾﺠﺐ أن ﺗﻜﻮن ﺗﻌﺮف ﻣﺴﺒﻘﺎ ﻛﯿﻒ ﺗﻘﻮم ﺑﺈﻧﺸﺎء ﻛﻞ ﺟﺰء ﻣﻦ أﺟﺰاء وأﺷﻜﺎل اﻟﻨﻤﻮذج ،وإذا ﻟﻢ ﺗﻜﻦ ﻓﻼﺑﺪ ﻟﻚ وان ﺗﺮاﺟﻊ ﻓﺼﻞ اﻟﻨﻤﺎذج اﻻﺳﺎﺳﯿﻪ ﻓﻨﺤﻦ ﻫﻨﺎ ﻧﺮﻛﺰ ﻓﻘﻂ ﻋﻠﻲ اﻟﺰر Submitو إﻟﯿﻚ اﻟﻜﻮد اﻟﺨﺎص ﺑﺈدراج ﺻﻮرة\"<INPUT TYPE=\"image\" SRC=\"images/submit.gif\" HEIGHT=\"20\" WIDTH=\"60\" BORDER=\"0>\"أدﺧﻞ ﺑﯿﺎﻧﺎﺗﻚ\"=ALT
Search