Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Основы работы в сети Интернет. Учебное пособие
.pdf
<select name=”lstMes” onChange=”fState()”>
<option value=”YES!”>message 1
<option value=”NO!” selected>message 2
<option value=”OK!”>message 3
</select>
</form>
В спи ске три стро ки, вто рая стро ка вы бра на по умол ча нию.
При вы бо ре стро ки спи ска по ро ж да ет ся со бы тие
ет ся функ ция
Код функ ции:
fState, в ко то рой на пи сан код оп ро са спи ска.
onChange и вы пол ня-
function fState(){
var mes=””;
var idx;
var forma=document.frmGo;
idx=forma.lstMes.selectedIndex;
mes=forma.lstMes.options[idx].text
+”\n”+forma.lstMes.options[idx].value
alert(mes);
}
Ре зуль тат на ка п ли ва ет ся в сим воль ную пе ре мен ную mes и ее зна че ние
вы во дит ся служ бой со об ще ний брау зе ра.
При мер 2. Тре бу ет ся оп ро сить спи сок из при ме ра но мер 1. Спи сок
мно го знач ный. Ре зуль тат оп ро са вы во дит ся в тек сто вую об ласть фор мы
(рис. 3.3).
Те ги для соз да ния фор мы при мут вид:
<form name=»frmGo»>
<select name=»lstMes» multiple>
<option value=»YES!»>message 1
<option value=»NO!»>message 2
<option value=»OK!»>message 3
</select><br>
<input type=»button» value=»Go»
onClick=»fState()»><br>
61

<textarea name=»display» rows=»3» cols=»30»>
</textarea>
</form>
Оп рос про из во дит ся при на жа тии ко манд ной кноп ки.
Код функ ции оп ро са:
function fState(){
var mes=»»;
var forma=document.frmGo;
for (i=0;i<forma.lstMes.length;i++){
if (forma.lstMes.options[i].selected){
mes+=forma.lstMes.options[i].text+»-»
+forma.lstMes.options[i].value+»\n»;}//if
}//for
forma.display.value=mes;
}
Рис. 3.3. Оп рос спи ска мно го знач но го вы бо ра
Вы вод про ис хо дит в тек сто вую об ласть display. На рис. 3.3 по ка зан резуль тат ра бо ты функ ции. Вы бор в спи ске про из во дит ся щелч ка ми мы ши при
на жа той кла ви ше CTRL. Мож но от ме тить пер вый эле мент спи ска при нажа той кла ви ше CTRL, а по след ний эле мент вы брать при на жа той кла ви ше
SHIFT. В ре зуль та те бу дет вы де ле но сра зу не сколь ко строк спи ска.
62

Ка кие ти пы сце на ри ев ис поль зу ют ся в се ти Ин тер нет?1.
Дай те клас си фи ка цию эле мен тов диа ло га в кли ент ских HTML-фор мах.2.
Как соз дать кли ент скую фор му HTML?3.
Что та кое со бы тие JavaScript и со бы тий ная про це ду ра?4.
Как про грам ми ру ет ся ре ак ция при на жа тии кноп ки фор мы?5.
Ка кую струк ту ру име ет стра ни ца при раз ме ще нии скрип та об ра бот ки 6.
фор мы?
Как по лу чить дос туп в ко де JavaScript к фор ме и ее эле мен там диа ло га?7.
Ка кие ти пы тек сто вых по лей ис поль зу ют ся при соз да нии форм?8.
В чем раз ни ца ме ж ду тек сто вым по лем и тек сто вой об ла стью фор мы?9.
Как про грам ми ру ет ся оп рос бло ка од но знач но го вы бо ра фор мы?10.
Как про грам ми ру ет ся оп рос бло ка мно го знач но го вы бо ра фор мы?11.
Как оп ра ши ва ет ся спи сок од но знач но го вы бо ра фор мы?12.
Как оп ра ши ва ет ся спи сок мно го знач но го вы бо ра фор мы?13.
Кон троль ные во про сы
63

ПРИ ЛО ЖЕ НИЯ
При ло же ние 1
Сти ле вые па ра мет ры
Сти ле вые па ра мет ры при ме ня ют ся к кон крет но му те гу XML. Тег до кумен та об ра зу ет узел с оп ре де лен ным со дер жа ни ем.
Ес ли ис поль зу ют ся па ра мет ры, зна че ни ем ко то рых яв ля ет ся не ко то рый
раз мер – чис ло, то это чис ло за да ет ся в ви де
че ние еди ни цы из ме ре ния. Еди ни цы из ме ре ния мо гут быть:
px – пик се лы;
em – вы со та те ку ще го шриф та, ис поль зуе мо го в уз ле;
ex – вы со та строч ной бу к вы x те ку ще го шриф та.
Ne, где N – чис ло, e – обо зна-
На при мер:
24px – 24 пик се ла.
Сти ле вые па ра мет ры раз де ля ют на груп пы.
Пер вая груп па па ра мет ров. Эти па ра мет ры слу жат для оформ ле ния уз ла,
они да ны в табл. 1.1.
Таб ли ца 1.1
Оформ ле ние уз ла
Па ра метр Зна че ние
background-image
background-color
background-repeat
За груз ка изо бра же ния: url(path). Здесь path –
путь к фай лу изо бра же ния
Цвет фо на уз ла. Это сис тем ная цве то вая кон станта как в HTML ли бо ше ст на дца те рич ное чис ло
#rrggbb – код цве та в фор ма те RGB
Спо соб вы во да изо бра же ния:
repeat (по вто рять),
repeat-x (по вто рять го ри зон таль но),
repeat-y (по вто рять вер ти каль но),
no-repeat (не по вто рять)
background-position
Вы рав ни ва ние изо бра же ния:
left, right, top, bottom, center (рис. 1)
width
height
Ши ри на об лас ти вы во да изо бра же ния
Вы со та об лас ти вы во да изо бра же ния
64

Раз ме ще ние изо бра же ния в уз ле вы пол ня ет ся с ука за ни ем его вы рав ни-
ва ния. На рис. по ка за ны спо со бы вы рав ни ва ния по по лю уз ла.
Рис. Вы рав ни ва ние по по лю уз ла
Вто рая груп па – это па ра мет ры для ра бо ты с тек стом. Они по ка за ны
в табл. 1.2.
Таб ли ца 1.2
Оформ ле ние тек ста
Па ра метр Зна че ние
display
font-family
font-size
font-style
font-weight
color
Ото бра же ние тек ста: block (от дель ный фраг мент, стро ка),
none (от ме на дей ст вия)
Тип шриф та
Раз мер шриф та
На чер та ние тек ста:
normal (обыч ный),
italic (кур сив ный),
oblique (ру ко пис ный)
Яр кость шриф та:
normal (обыч ный),
bold (жир ный),
bolder( уси ле ние яр ко сти);
lighter (мак си маль ная яр кость)
ли бо диа па зон 100–900. Вы бран ное зна че ние долж но быть кратно 100
Цвет сим во лов
65

Окончание таб ли цы 1.2
Па ра метр Зна че ние
texttransform
text-align
textdecoration
Ре гистр сим во лов:
uppercase (про пис ные бу к вы), lowercase (строч ные бу к-
вы), capitalize (все пер вые бу к вы слов про пис ные)
Вы рав ни ва ние тек ста в уз ле: left, right, center
Оформ ле ние тек ста:
underline (под строч ный),
overline (над строч ный),
line-through (пе ре черк ну тый)
Тре тья груп па па ра мет ров по зво ля ет оформ лять тек сто вые об лас ти.
С их по мо щью оп ре де ля ют об рам ле ние, от сту пы, ха рак тер об те ка ния
тек стом уз ла и вы рав ни ва ние по гра ни це ок на про грам мы про смот ра. Эти
па ра мет ры да ны в табл. 1.3.
Таб ли ца 1.3
Оформ ле ние об лас тей
Па ра метр Зна че ния
border-style
border-width
border-color
Тип рам ки: solid, double, none
Тол щи на рам ки: thin, medium, thick или раз мер
Цвет рам ки
padding-top
padding-bottom
padding-left
padding-right
padding
fl oat
clear
margin-left
margin-right
margin-bottom
margin-top
Про свет ме ж ду рам кой и ок ру жаю щим ее тек стом cверху
Про свет ме ж ду рам кой и ок ру жаю щим ее тек стом сни зу
Про свет ме ж ду рам кой и ок ру жаю щим ее тек стом сле ва
Про свет ме ж ду рам кой и ок ру жаю щим ее тек стом спра ва
Про свет ме ж ду рам кой и ок ру жаю щим ее тек стом
Рас по ло же ние эле мен та от но си тель но дру го го: left,
right, none
От ме на дей ст вия fl oat: left, right
Ле вый от ступ от ок на про грам мы
Пра вый от ступ от ок на про грам мы
От ступ сни зу от ок на про грам мы
От ступ свер ху от ок на про грам мы
66

При ло же ние 2
Ос но вы язы ка JavaScript
Осо бен но сти язы ка про грам ми ро ва ния
Язык соз да ния скрип тов JavaScript тре бу ет при на пи са нии ко да учи ты-
вать ре гистр сим во лов в опе ра то рах и вы ра же ни ях.
При на пи са нии ко да раз ра бот чик мо жет ис поль зо вать дан ные раз лич ных
ти пов. Су ще ст ву ют сле дую щие ти пы дан ных:
чи сло вой; –
бу ле вый – ло ги че ский; –
стро ко вый; –
не оп ре де лен ный – ну ле вой. –
При ме ры дан ных:
чи сло вые: 3.14, 200; –
ло ги че ские: – true, false;
стро ка сим во лов: – «При вет Мир !»
не оп ре де лен ное зна че ние: – null.
При соз да нии ко да скрип та до пус ка ет ся ис поль зо вать ком мен та рии.
Текст ком мен та рия дол жен на чи нать ся с па ры сим во лов //. В этом слу чае
мож но за дать од ну стро ку ком мен та рия. Для вво да не сколь ких строк коммен та рия ис поль зу ют ся скоб ки /* */.
При ме ры:
//JavaScript
/*JavaScript
Ло каль ный сце на рий
*/
Яв но тип пе ре мен ных не за да ет ся, но до пус ка ет ся яв но вво дить пе ре менные:
var a;//яв ное за да ние
а=”При вет Мир!”;
PI=3.14;//Не яв ное за да ние
Тип пе ре мен ной за ви сит от зна че ния, ко то рое хра нит ся в ней в те ку щий
мо мент.
67

Раз ра бот чик мо жет ис поль зо вать функ ции пре об ра зо ва ния к ти пам:
parseInt(s)
parseFloat(s)
Для про вер ки на ли чия в стро ке сим во лов чис ла слу жит функ ция
Пре об ра зу ет зна че ние из стро ки s в чис ло це ло го ти па
Пре об ра зу ет зна че ние из стро ки s в чис ло ве ще ст вен но го ти па
isNaN(s). Ес ли стро ка со дер жит сим во лы чис ла воз вра ща ет ся зна че ние
false.
При про грам ми ро ва нии до пус ка ет ся ис поль зо вать мас си вы. Мас сив –
име но ван ная по сле до ва тель ность ин дек си ро ван ных од но тип ных дан ных.
Соз да ет ся мас сив с по мо щью кон ст рук то ра:
v = new Array(n). n – число элементов.
Ин дек си ро ва ние мас си ва про из во дит ся с ну ля. Для об ра ще ния к эле ментам мас си ва слу жат скоб ки []. На при мер,
вто рой эле мент мас си ва.
Мас сив пред став ля ет со бой объ ект, ко то рый об ла да ет ме то да ми и свойст ва ми. На при мер:
v[1]=50 – это за пись чис ла во
length – свой ст во. Воз вра ща ет чис ло эле мен тов в мас си ве.
sort()– ме тод. Слу жит для сор ти ров ки эле мен тов мас си ва. В ре зуль та те
соз да ет ся но вый мас сив.
При мер. Дан мас сив из пя ти ла тин ских про пис ных букв G, A, K, Z, L.
Тре бу ет ся его от сор ти ро вать, а ре зуль тат по мес тить в стро ку.
sym=new Array(5);
mes=»»;//Стро ка для прие ма сим во лов
sym[0]=»G»;sym[1]=»A»;
sym[2]=»K»;sym[3]=»Z»;
sym[4]=»L»;
sortA=sym.sort();//От сор ти ро вать сим во лы
//Вы вес ти сор ти ро ван ный мас сив сим во лов:
for (i=0;i<sortA.length;i++){
mes+=sortA[i]+» «}
По сле вы зо ва ме то да sort соз да ет ся но вый мас сив сим во лов, по ме щаемый в мас сив
воль ную пе ре мен ную
ни ем и опе ра тор цик ла с за дан ным чис лом ша гов (см. ни же).
sortA. За тем эле мен ты мас си ва в цик ле за пи сы ва ют ся в сим-
mes. Для это го ис поль зу ет ся при сваи ва ние с на ко п ле-
68

Ос нов ные опе ра ции
Ариф ме ти че ские опе ра ции: *, /, %, +, – (ум но же ние, де ле ние, де ле ние с
вы де ле ни ем ос тат ка, сло же ние, вы чи та ние).
Опе ра ции срав не ния: <,<=,>,>=,==,!= (мень ше, мень ше ли бо рав но,
боль ше, боль ше ли бо рав но, рав но, не рав но).
Ло ги че ские опе ра ции: ||, &&, ! (или, и, от ри ца ние).
Ин кре мен ти ро ва ние (уве ли че ние на еди ни цу опе ран да) ++.
Дек ре мен ти ро ва ние (умень ше ние на еди ни цу опе ран да) – –.
Опе ра ции ин кре мен ти ро ва ния и дек ре мен ти ро ва ния бы ва ют пре фиксные и пост фикс ные. Пре фикс ные опе ра ции вы пол ня ют ся в пер вую очередь.
При мер:
x=10
y=++x; //y=11
На ос но ве опе ра ций стро ят ся вы ра же ния. Вы ра же ние воз вра ща ет оп реде лен ный ре зуль тат. Опе ра ции в вы ра же нии вы пол ня ют ся с уче том при орите та, для из ме не ния при ори те та ис поль зу ют ся круг лые скоб ки. Наи большим при ори те том об ла да ют опе ра ции ум но же ния и де ле ния.
Об щая фор ма вы ра же ния име ет вид:
Здесь v – пе ре мен ная, по лу чив шая ре зуль тат вы ра же ния.
Вы ра же ние мо жет за кан чи вать ся сим во лом «
ла обя за тель но толь ко в том слу чае, ес ли вы ра же ние пе ре но сит ся на дру гую
стро ку.
Со хра нить ре зуль тат вы ра же ния мож но с по мо щью опе ра то ра при сваива ния. В JavaScript мож но ис поль зо вать раз лич ные его ви ды:
= (про стое при сваи ва ние);
*= (на ко п ле ние с ум но же ни ем);
/= (на ко п ле ние с де ле ни ем);
-= (на ко п ле ние с вы чи та ни ем);
+= (на ко п ле ние со сло же ни ем).
При мер:
x=10
y=x++;//y=10
v=вы ра же ние.
;». На ли чие это го сим во-
x=20;
x+=10//x=30
x*=10//x=300.
69

Сис тем ные сред ст ва вво да/вы во да
Для ис поль зо ва ния сис тем ных средств вво да/вы во да брау зе ра слу жат
опе ра то ры
Вы вод сис тем но го ок на с тек стом:
Для соз да ния тек ста со об ще ния мож но ис поль зо вать опе ра цию кон ка те-
на ции строк +, пе ре ход на сле дую щую стро ку тре бу ет вклю че ния в текст ESC
ко да
ет ся к стро ко во му ти пу.
При ме ры:
alert, confi rm, prompt.
alert(“Текст”);
\n. При со еди не нии со строч кой чис ла оно ав то ма ти че ски пре об ра зу-
alert(«Hello World\nПривет Мир !»);
alert(«x=»+Math.sin(x));
Вы вод ок на для диа ло га с поль зо ва те лем: confi rm(“Текст”).
Ес ли на жа та кноп ка ОК в ок не, то воз вра ща ет ся зна че ние
на), ина че
За прос стро ки тек ста из сис тем но го ок на:
false (ложь) .
true (ис тин-
v=prompt(“под пись к тек сто во му по лю”,
“зна че ние по умол ча нию”,”Зо го ло вок ок на”);
Воз вра ща ет опе ра тор вве ден ную стро ку в пе ре мен ную v.
Ос нов ные опе ра то ры
Опе ра то ры ис поль зу ют ся для вы пол не ния оп ре де лен ных ал го рит ми ческих дей ст вий. Для вы пол не ния груп пы вы ра же ний в опе ра то ре ис поль зу ется па ра ско бок {} – блок.
Ветв ле ние
Опе ра тор ветв ле ния по зво ля ет из ме нить по сле до ва тель ность вы пол нения ко да скрип та. Об щая фор ма опе ра то ра име ет вид:
if (expr) {
//опе ра то ры
}else {
//опе ра то ры
}
Здесь expr – ло ги че ское вы ра же ние, по стро ен ное с по мо щью опе ра ций
срав не ния. Ло ги че ское вы ра же ние мож но по стро ить, ис поль зуя так же ло гиче ские опе ра ции.
70
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
