Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
типо шпоры.docx
Скачиваний:
0
Добавлен:
28.10.2018
Размер:
231.21 Кб
Скачать

26. Регулярное выражение. Основные понятия.

Все регулярные выражения в JS являются шаблонами содержимого подстрок, оформленного как /регулярное выражение/флаги

Флаги – это параметры соответствия строки регулярному выражению.

Используются следующие флаги:

I – не зависимость от регистра

g – глобальное соответствие, используется при поиске подстрок в строке соответствующих регулярному выражению.

m – многострочное соответствие

для работы с регулярными выражениями используется объект RegExp.

var pattern = new RegExp(“http”);

регулярное выражение можно создавать с помощью конструктора RegExp.

Для проверки соответсвия строки регулярному выражению используется метод test()

var pattern = new RegExp(“http”,”i”);

pattern.test(“HTTP://www.w3c.org”);

Для регулярных выражений можно задать индикаор позиции , описывающий что регулярному выражению должна соответсвовать начало ^ или конец строки $.

В регулярных выражениях как и в строках используются управляющие комбинации.

Так как некотрые символы в регулярных выражениях имеют определенное значение, то их используют при помощи экранирования. \.

var pattern = /http:\/\/www\.w3c\.org\//;

Квантификаторы повторения регулярных выражений позволяют указать число необходимых или возможных повторений конкретного элемента в выражении.

*повторение 0 или более раз

+повторение 1 или более раз

?повторение 0 или 1 раз

Можно задавать количество повторени явно с помощью фигурных скобок.

  1. Указание точного числа

Var pattern

  1. Указание диапазона

33. Обход дерева dom

DOM Traversal API (http://www.w3.org/TR/DOM-Level-2-TraversaI-Range/) - интерфейс обхода дерева DOM — является расширением DOM уровня 2, обеспечивающим удобные возможности обхода дерева документа и манипуляций с его узлами. Соответствующие спецификации указывают два объекта — Nodelterator и TreeWalker.

Объект Nodelterator, создаваемый с помощью document .CreateNodeIterator(), может использоваться для "выравнивания" представления дерева или поддерева документа, чтобы по нему можно было перемещаться с помощью методов nextNode() и previousNode(). При создании Nodelterator можно использовать фильтр, что дает возможность выбрать определенные заданные дескрипторы.

Подобно объекту Nodelterator, объект TreeWalker позволяет двигаться по коллекции узлов, но в данном случае древовидная структура сохраняется. Чтобы создать объект TreeWalker, используется document. createTreeWalker, а затем можно использовать методы firstChild(), lastChild(), nextSibling(), parentNode() и previousSibling(), чтобы совершить обход узлов дерева документа. С помощью nextNode() объект TreeWalker обеспечивает и возможность движения по выровненному дереву, так что в некотором смысле Nodelterator на самом деле не нужен.

34. События в js

  • Привязка с помощью атрибута обработчика:

<form onsubmit="мояФункция();">;

<а href="http://www.w3c.org/DOM" onclick="alert('Теперь перейдем на стра­ницу DOM');"> Информация о модели DOM консорциума W3C</a>

  • Привязка с помощью свойства соответствующего объекта в DOM

document.getElementById("мояФорма").onsubmit = мояФункция;

  • Использование методов DOM2 (addEventListener())

  • Использование «фирменных» возможностей браузеров (attachEvent() в IE)

Способы выхова событий

  • неявный вызов браузером в ответ на действия, инициированные пользователем или средствами JavaScript;

  • явный вызов средствами JavaScript с помощью методов DOM1, например document.forms[0].submit();

  • явный вызов с помощью фирменных методов, например fireEvent() в Internet Explorer;

  • явный вызов средствами JavaScript с помощью метода DOM2 dispatchEvent().

onblur Возникает при потере элементом фокуса ввода

onchange Потеря фокуса ввода полем формы,

onclick Выполнение щелчка на элементе

ondblclick Выполнение двойного щелчка на элементе

onfocus Получение фокуса ввода элементом

onkeydown Нажатие клавиши в то время, когда элемент имеет фокус ввода

onkeyup Освобождение ранее нажатой клавиши в то время, когда элемент имеет фокус ввода

onmousedown Нажатие кнопки мыши в то время, когда элемент имеет фокус ввода

onmousemove Движение указателя мыши, когда он находится на элементе

onmouseout Смещение указателя мыши с элемента

onmouseover Помещение указателя мыши на элемент

onmouseup Освобождение ранее нажатой кнопки мыши в то время, когда элемент имеет фокус ввода

onreset Возвращение формы в исходное состояние

onselect Выбор текста пользователем

onsubmit Отправка формы серверу

onunload Выгрузка браузером текущего документа из окна или фрейма

Метод события

Элементы

click()

<input type="button">, <input type="checkbox">, <input type="reset">, <input type="submit">, <input type="radio">,

<a> (не является частью DOM, но имеет широкую поддержку)

blur ()

<select>, <input>, <textarea>, <а>

focus()

<select>, <input>, <textarea>, <a>

select ()

<input type="text">, <input type="password">, <input type="file">, <textarea>

submit ()

<form>

reset ()

<form>

Привязка событий в dom2

объект.addEventListener(событие, обработчик, фазаЗахвата);

• объект задает узел, к которому привязывается приемник события;

• событие соответствует событию, которое должно отслеживаться;

• обработчик задает функцию, которая должна вызываться, когда происходит соответствующее событие;

• фазаЗахвата является логическим значением, указывающим, когда должен вызываться обработчик событий — в фазе захвата (true) или в фазе возврата (false).

Свойство всех объектов event

Свойство только для чтения

Описание

bubbles

Логическое значение, указывающее, имеет ли событие фазу возврата

cancelable

Логическое значение, указывающее, допускает ли объект возможность отмены

currentTarget

Узел, обработчик события которого выполняется в данный момент (т.е. узел, к которому привязан данный обработчик событий)

eventPhase

Числовое значение, указывающее текущую фазу течения события (1 — для фазы захвата, 2 — для нахождения в целевом объекте, 3 — для фазы возврата)

type

Строка, соответствующая типу события (например, "click")

target

Узел, к которому изначально направлялось событие (т.е. узел, в котором событие произошло)