Java-Script Java-Script это язык программирования. Симпатичен тем, что он является интерпретируемым - вставили программку на Java-scripte в страничку - и все - можно тут же посмотреть на результат работы программы. С другой стороны - Вы чаще всего имеете и возможность посмотреть на то, как устроена программа, встроенная в страничку. Например, то как распечатана фраза "Привет, друзья!" можно увидеть на Page-Source (мне гораздо больше нравится определение Изнанка страницы ;) Привет, друзья! Как встраивается в текст программы в страничку? Другая возможность - сохранить программку в виде отдельного файла, а потом вызвать его со страницы: SRC="navigator.js"> Очень похоже на то, как мы вставляли в страницы ссылку стилевые файлы: Данные в Java-Script - числа, строки и массивы Переменные могут быть локальными и глобальными. Переменные объявляются с помощью ключевого слова var. Переменная явно объявленная с помощью var является локальной внутри того блока, где она объявлена, а необъявленная переменная - всегда глобальна. Стоит отдавать предпочтение локальным переменным и всегда объявлять переменные при помощи var. var a; Значение переменной присваивается через операцию присваивания. var a = "Привет! Это переменная" ; Переменная а получила значение строки 'Привет! Это переменная' Строки при записи должны быть заключены либо в одинарные, либо в двойные кавычки. Операции над числами сложение (+), вычитание (-), умножение (*), деление (/). Операция сложения (+) применима также и для строк и означает конкатенацию. Если только один из операндов - строка, а второй число, то второй преобразуется в строку Вывод информации на экран либо при помощи оператора document.write("Это текст"); document.write("Это текст" + ", в котором объединены две строки"); Логические выражения - выражения, которые могут принимать значения истина и ложь. Число 0 или пустая строка обозначают ложь. Все, остальное - обозначает истину. Между двумя логическими выражениями можно ставить логические операции: "И" (&&), "ИЛИ" (||), а перед логическим выражением может стоять отрицание (!). Java-Script и формы С помощью языка написания сценариев JavaScript можно проверить правильность заполнения формы до ее отправки серверу, обработать нажатие других (отличных от SUBMIT) кнопок и многие другие события. Если отсылать данные будут по почте, то используется выражение В этом случае, необходимо, чтобы броузер читателя поддерживал возможность посылки почты. Добавим посетителю нашей странички возможность ввести информацию в текстовое поле document.Form.textfield.value - для данной формы с именем Form и ее текстового поля textfield считаем значение value. Далее мы используем document.Form.numberfield.value и передаем его значение eval(); Считываем значение и используем его! При подсчетах мы использовали простую функцию, которая возвращает результат оператора eval Strings + Arrays Java-Scripts - строки и массивы Раз уж мы знаем про формы и умеем их обрабатывать, то давайте применим свои умения к изучению строк и массивов Java-Script. У такого объекта как строка есть много методов. Ниже продемонстрированны ли некоторые из них. Можно посмотреть, понажимав на кнопки. Пока никакого программирования не требовалось. Управляющиe операторы, рекурсия, function(){ } Функция задается через имя_функции. Далее пишутся скобки, куда заключены входные параметры. Если параметров нет, скобки все равно обязательны. Тело функции заключено в {}. Каждая строка завершается знаком; Результатом выполнения функции может быть действие на экране. Так следующая функуция печатает строку, которую получает в качестве входного параметра function print_red(string){ document.write(string.fontcolor('red')); } Гораздо более интересны функции, которые получают данные и возвращают результат преобразования этих данных. Приняли строку - вернули массив. First, butfirst, last, butlast - обратите внимание, тут был использован псевдопротокол a href="javascript:void(0) - ссылка, которая просто позволяет навести на слово мышку и отработать событие - onMouseOver. Для того, чтобы чувствовать себя совсем уверенно, нам не хватает только функций, которые будут добавлять новые элементы в начало или конец списка. Firstput да Lastput- lput, fput - здесь мы добавляем одну птичку в начало или в конец списка. В конец - совсем просто, а в начало чуть посложнее. А можем ли добавить не один элемент, а сразу список? Попробуем добавить список внутрь списка, а потом посмотреть, что теперь является первым элементом нового списка. Управляющие конструкции - if, if else, while, for IF function check_name(name){ if (name=='Коля' || name=='Вася') return ("Здравствуй, " + name); return "Не знаю никакого " + name; } Далее могут следовать всевозможные варианты с определением платежеспособности клиента if (sum$ > 100000) return "You are welcome" IF ELSE function check_name2 (name){ if (name=='') return ("Должно быть хоть какое-то имя") ; if (name=='Коля' || name=='Вася') return ("Здравствуй, милый " + name); else if (name=='Лена' || name=='Оля') return ("Здравствуй, милая " + name); return "Не знаю никаких " + name; } Не совсем удачный пример, так как использование return позволяет обойтись без конструкции else. if (day==1) document.write("понедельник"); else if (day==2) document.write("вторник"); else if (day==3) document.write("среда"); И т.д. WHILE while (<логическое выражение>) оператор; Сначала вычисляется логическое выражение. Если оно истинно, то выполняется оператор. Затем снова вычисляется логическое выражение. Если оно и на этот раз истинно - снова выполняется оператор и снова вычисляется логическое выражение. var i = 0; while (i>10) { document.write("Привет! "); i = i + 1; } FOR for (выражение1;выражение2;выражение3) оператор; выражение1 вычисляется всегда и только один раз, в самом начале. Выражение2 всегда вычисляется хотя бы один раз. Выражение3 и оператор могут не вычисляться и ни разу в том случае, когда выражение2 изначально ложно. Cоздаваемые функции можно определить и как методы для объектов. Причем не только новых, но и собственных объектов Java-Script! Таких как Строка или Массив, или число. Пока мы видим, что функции производят некие процедуры над объектами, заключенными в скобки - function name_of_function(object1, object2). Объекты содержат в себе методы и запись будет другой - object.method(); Logo-lists = Javascript arrays function first(array){ return array.slice(0,1); } function bf(array){return array.slice(1); } function last(array){return array.slice(array.length - 1); } function bl(array){ return array.slice(0,array.length - 1); } function lput(item,array){ array[array.length]=item; return array; } function fput(item,array){ var arnew=array.reverse(); arnew[array.length]=item; return arnew.reverse(); } function memberp(name,array){ if (array.length==0)return "false"; if (name) == first(array) return "true"; return memberp(name,bf(array)); } Окна Для создания нового окна используется метод open объекта window. open(url, имя окна, параметры); - первый аргумент - документ, который следует загрузить во вновь создаваемое
окно. - Второй - имя окна (значение свойства name нового объекта window).
- Третий - параметры создания окна.
Параметры создания окна: height=высота в пикселах; width=ширина в пикселах ; location=yes|no (1|0); - указывает, следует ли создаваемому окну иметь поле для ввода адреса; menubar=yes|no (1|0) - будет ли у создаваемого окна меню; resizable=yes|no (1|0) - можно ли будет менять размер окна после его создания; scrollbars=yes|no (1|0) - будут ли у создаваемого окна линейки прокрутки; status=yes|no (1|0) - будет ли у создаваемого окна поле статуса; toolbar=yes|no (1|0) - будет ли у создаваемого окна панель инструментов. Создадим кнопку, которая будет только открывать окно Создадим кнопку, которая будет открывать окно шириной 200, высотой 200 Ткнули кнопку - получили окно заданных размеров. При этом мы еще воспользовались методами окна и методами документа. У всякого документа есть следующие методы: document.open - открыть документ перед тем, как начать в нем запись document.write document.writeln - записать в документе. document.close - закрыть документ после записи. Комбинация из document.close и document.open приводит к тому, что документ очищается и там можно заново писать. Проверим, существует ли нужное нам окно? Научимся закрывать недавно созданное окно Все свои навыки html-кодирования и видоизменения строк и массивов при помощи Java-Script мы теперь смело можем использовать в новых окнах. Создадим список героев и распечатаем их в новом окне. А теперь попробуем создать новое окно и записать туда уже имеющихся в наличии птиц Да, все работает. Открывается окно и в нем появляются знакомые названия. Если Вы поменятие содержимое формы в разделе String, то и название в окне изменятся.
Источник: http://pat.iatp.ru/htm-pat/java-script.html |