Главная страница сайта   Главная страница папки
Настоящая web-страница на весь экран

Программные коды сценариев:
настоящей страницы 1  2
Аналога электронных таблиц Excel
Массива элементов

	Первый сценарий настоящей страницы
<SCRIPT>
<!--
status="Коды сценариев"
-->
</SCRIPT>
выводит текст "Коды сценариев" в строку состояния
при каждом открытии страницы.
При наведении мыши на ссылку
это слово из строки состояния исчезает,
а когда мышь с ссылки убирается,
появляется вновь.
	Аналогичный сценарий
есть в каждой странице настоящей папки.
Текст, выводимый в строку состояния, совпадает
с текстом вызывающей страницу ссылки в левом фрейме,
напоминая пользователю, какую страницу он читает.
	Очень простой и полезный сценарий,
так как в верх экрана Internet Explorer выводит
не заголовок страницы, находящейся в одном из фреймов,
а заголовок страницы, задающей фреймовую структуру.
	Обратите внимание, что
тег <SCRIPT> не содержит указания на язык сценария
и тем не менее сценарий работает.
	Второй сценарий настоящей страницы
<SCRIPT LANGUAGE=VBScript>
<!--

Sub Document_onMouseMove
	Set m=window.event.srcElement
	If m.tagName="A" Then _
	m.Style.BackGround="Yellow": _
	m.Style.textDecoration="none"
End Sub

Sub Document_onMouseOut
	Set m=window.event.srcElement
	If m.tagName="A" Then _
	m.Style.BackGround=Missing: _
	m.Style.textDecoration="underline"
End Sub

-->
</SCRIPT>
при наведении мыши на ссылку
даёт ссылке жёлтый фон и убирает подчёркивание,
а при сходе мыши со ссылки
возвращает ссылку в первоначальное состояние.
Этот сценарий помогает пользователю
определить, на какую именно ссылку он навёл мышь,
в случае если ссылки находятся рядом друг с другом.
	Строки
<SCRIPT LANGUAGE=VBScript>
<!--
-->
</SCRIPT>
содержатся в каждом сценарии на VBScript.
Обратите внимание, что
слово VBScript необязательно заключать в кавычки.
	Программист, знакомый с VBA,
найдёт в этом сценарии много знакомого,
но заметит и отличия VBScript от VBA.
	Как и в VBA, в VBScript
процедура Sub начинается с Sub и кончается End Sub.
Однако в отличие от VBA в VBScript
после имени процедуры можно опустить пустые скобки.
	В VBScript
макрос Document_onMouseMove выполняется, когда
мышь наводится на какой-либо объект web-страницы;
Document_onMouseOut - когда мышь сходит с объекта.
	Строка Set m=window.event.srcElement,
содержащая знакомый по VBA оператор Set,
придаёт переменной m
значение ссылки на объект web-страницы.
	Как и в VBA, в VBScript
локальные переменные можно не объявлять
(локальной называется переменная,
введённая внутри процедуры
и доступная только той процедуре,
в которой она введена;
как в той , так и в другой процедуре
рассматриваемого сценария
введена переменная с именем m ,
но фактически это разные переменные).
	Утверждение m.tagName="A" (A - латинская)
истинно,
если объект, на который ссылается переменная m,
находится непосредственно в теге <A></A>,
и ложно
в любом другом случае;
применение
HTML-кода <A HREF=#LABEL>э<B>ю</B>я</A>
приводит к тому, что
буквы э, я находятся непосредственно в теге <A></A>,
а буква ю находится в теге <A></A>,
но не находится непосредственно в теге <A></A>
(иначе говоря,
истинно, что буква ю находится в теге <A></A>,
но ложно, что
буква ю находится непосредственно в теге <A></A>).
	Синтаксис оператора
IF ... Then ... Else ... End IF
в VBScript
совпадает с синтаксисом этого оператора в VBA.
	Как и в VBA, в VBScript
одну строку можно разбить на несколько
парами символов пробел-знак подчёркивания.
	В строке m.Style.BackGround=Missing
рассматриваемого сценария
Missing - не встроенная константа языка VBScript,
а неинициализированная переменная;
Missing можно заменить, например, на Z,
работа сценария от этого не изменится.

	Аналог электронных таблиц Excel
содержит сценарий,который Вы можете посмотреть,нажав
.

     Чтобы убрать код сценария (выделенный полужирным шрифтом) ,
опять нажмите мышью кнопку .
	<INPUT ID=gj1 VALUE=12345 SIZE=5 MAXLENGTH=5>
задаёт текстовую строку, т.е. окошечко,
в которое пользователь может ввести строку символов.
	Атрибут ID задаёт уникальное ID-имя,
благодаря которому
собственно сценарий
(заключённый в тег <SCRIPT></SCRIPT>)
может обратиться к этому элементу web-страницы.
Этот же атрибут используют,
когда пишут сценарий не на VBScript,
а на другом языке (например, JavaScript).
	Атрибут VALUE задаёт строку,
которая появляется в окошечке
при каждом открытии web-страницы.
Значение этого атрибута можно заключать в кавычки
(например, VALUE=12345 равнозначно VALUE="12345"),
но во многих случаях это делать необязательно.
В частности,
без кавычек можно ввести любые
число (положительное, отрицательное или ноль;
целое или десятичную дробь)
и даже слово (набор букв без пропусков).
Однако
если вводимое значение содержит хотя бы один пробел,
его необходимо заключить в кавычки.
	VALUE
не только атрибут тега <INPUT>,
но и главное свойство окошечка , заданного этим тегом ,
равное содержимому окошечка ,
т.е. строке , введённой в окошечко программно или пользователем .
Обращаясь к свойству VALUE ,
сценарий может прочесть или изменить содержимое окошечка .
	Атрибут SIZE
задаёт протяжённость окошечка слева направо,
позволяя сделать обозримой
строку из нескольких окошечек.
Эту протяжённость часто называют длиной или шириной;
однако с точки зрения русского языка это некорректно,
так как эта протяжённость может быть
как больше, так и меньше высоты окошечка.
Атрибут SIZE задаёт протяжённость в "символах";
однако символы различны по ширине
и в Internet Explorer 5.5
в окошечке с SIZE=5 умещаются 6 цифр или 4 буквы Ш.
	Атрибут MAXLENGTH
задаёт максимальное число символов,
которые пользователь может ввести в окошечко.
	<SPAN ID=gj4></SPAN>
метит место на web-странице,
куда сценарий вставляет результат вычисления.
	В отличие от тегов <B>, <I>, <U> и других,
атрибут <SPAN>, если лишён атрибутов
и не перегружен (т.е. не переопределён) в таблице стилей,
ничего не делает :
действие <SPAN>, если он не перегружен,
полностью определяется атрибутами.
	Поэтому если нужно только пометить место,
используют именно этот атрибут.
	<BUTTON ID=buton>Вычислить</BUTTON>
вставляет на web-страницу
кнопку с ID-именем buton и надписью Вычислить.
	Перейдём к собственно сценарию.
	Обратите внимание, что
имя buton_onClick единственной процедуры сценария
состоит из двух частей:
ID-имени buton кнопки
и _onClick.
Такое имя приводит к тому, что
эта процедура
вызывается (но необязательно выполняется)
всякий раз,
когда левой кнопкой мыши нажимается
объект (в данном случае кнопка) с ID=buton.
	Тело единственной процедуры
рассматриваемого сценария
имеет только одну строку
gj4.innerText = gj1.VALUE * gj2.VALUE + gj3.VALUE
gj1.VALUE - содержимое крайне левого окошечка,
gj2.VALUE - среднего,
gj3.VALUE - крайне правого,
gj4.VALUE - текст,
вставляемый в место, помеченное тегом <SPAN>.
	Как и в VBA, в VBScript
знаком умножения является *
(звёздочка на кнопке с цифрой 8),
знаком сложения +.
Как и в обычном арифметическом выражении и VBA,
в VBScript
умножение выполняется раньше сложения,
если порядок действий не изменён скобками.
	Если
в какое-нибудь окошечке будет текст, который
VBScript не сможет интерпретировать как число,
(например, слово "арбуз"),
то процедура просто не выполнится.

	Сценарий Массива элементов
Карандаши <B ID=g1>2</B>  <B ID=j1>105</B>
Ручки <B ID=g2>3</B>  <B ID=j2>200</B>
Стержни <B ID=g3>1,5</B>  <B ID=j3>20</B>

<SCRIPT LANGUAGE=VBScript>
<!--
For k=1 To 3
	D = D + _
	eval("g" & k).innerText * _
	eval("j" & k).innerText
Next
Document.Writeln _
"Товара осталось на " & D & " рублей."
-->
</SCRIPT>
выполняется
при каждом открытии страницы с этим сценарием.
	Собственно сценарий
(заключённый в теге <SCRIPT></SCRIPT>),
почти совпадающий с этим,
может использоваться для подсчёта стоимости остатка
на складе или в магазине.
	Обратите внимание на 2 момента:
1) Этот сценарий не содержит
ни одной процедуры.
2) В отличие от VBA, в VBScript
после слова Next нельзя ставить имя счётчика цикла.


Хостинг от uCoz