Мы знаем, что полная реализация JavaScript должна быть составлена из трех частей: Ecmascript (Core), Bom (модель объекта браузера) и DOM (модель объекта документа).
Сегодня я в основном изучаю Бом и Дом.
Должна:
Bom предоставляет много объектов для доступа к функциям браузера, которые не имеют ничего общего с контентом веб -страницы (это бизнес DOM). В настоящее время BOM был перемещен в спецификацию HTML5 с помощью W3C.
Университетский объект:
Ядро BOM представляет собой экземпляр браузера. Это как интерфейс для доступа к окну браузера через JavaScript, так и глобальный объект, указанный Ecmascript. Это означает, что любой объект, переменная и функция, определенные на веб -странице, имеют окно в качестве глобального объекта, поэтому он имеет разрешение на доступ к методам, таким как Paresinint (). (Выдержка с высоты III). Кроме того, если веб -страница содержит кадры, каждый кадр имеет свой собственный объект окна и сохраняется в коллекции кадров (Index 0 Starts, LTR, TTB).
Прежде всего, переменные и функции в глобальной среде выполнения - все это роды и методы оконных объектов. Конечно, существует небольшая разница между глобальными переменными и атрибутами окон, непосредственно определенными. Глобальные переменные (если быть точными, они должны быть явно объявлены глобальными переменными) не могут использовать Delete, в то время как атрибуты окна в порядке. Кроме того, есть еще одна деталь, чтобы отметить, что попытка получить доступ к невисленному переменным ошибке, но нет проблем с использованием объектов запроса окна.
Итак, каковы общие свойства или методы окна?
1.name, каждый объект окна имеет атрибут имени, который содержит имя кадра. Обычно для понимания оконных отношений и структур.
2. Метод положения окна: Moveto (x координата новой позиции, y координата новой позиции), Moveby (горизонтальное движение X, вертикальное движение Y). Эти два метода не применяются к структуре.
3. В Chrome внутренние и внешние оба возвращают размер области просмотра.
Конечно, вы можете изменить размер окна на Resizeto (ширина нового окна, новая высота окна), Resizeby (до исходной ширины и увеличить y по сравнению с исходной высотой). Этот метод песни о любви не относится к структуре фреймворта.
4.window.open (URL, целевая цель, строка функции, независимо от того, заменяет ли новая страница логическое средство нагруженной в настоящее время страницы в истории браузера) используется для перемещения к определенному URL или открыть новое окно. Если указана целевая цель окна, а цель окна - это имя существующего окна или кадра, указанный URL будет загружен в окно или рамку, которая была переименована в переименование. В противном случае открытое окно, которое будет названо целевым окном. Конечно, ключевые слова, которые могут указать цели окна, являются _self, _parent, _top, _blank.
<a href = // www.vevb.com> Нажмите меня </a> <script> var link = document.getelementsbytagname ("a") [0]; оповещение (link.nodeName); window.onload = function () {link.onclick = function () {window.open (link.href, "good", "width = 400px, height = 300px"); вернуть ложь; }} </scriptКонкретные настройки строки функции здесь не подробно описаны. Если вам интересно, вы можете нажать здесь
5. В качестве однопоточного языка JS по-прежнему позволяет устанавливать значения тайм-аута (выполнение кода после указанного события) и значения времени интервала (цикл один раз каждый указанный время) для планирования выполнения кода в определенный момент.
Timeout Call: SetTimeout (строка кода JS, Millisecond Time). Как однопоточный язык, очередь задач JS может выполнять только один кусок кода за раз. Если очередь задачи пуста после интервала времени, строка кода будет выполнена. В противном случае вы должны подождать, пока предыдущий код не будет выполнен до выполнения.
var al = settimeout (function () {alert ("good");}, 5000); оповещение (AL); // 2Здесь я позвонил анонимной функции через 5 секунд для вывода Good. В окне появилась предупреждающая коробка, чтобы показать 2. Видно, что функция settimeout () возвращает числовой идентификатор, который является уникальным. Затем мы сможем очистить вызов тайм -аута через этот идентификатор и можем использовать ClearTimeout (ID), чтобы очистить его.
Косвенное вызов: setInterval (), параметры, которые он принимает, такие же, как SetTimeout (), а также возвращает числовой идентификатор и очищается с помощью clearTimeout ().
6. Системное диалоговое окно Методы: alert (), inform (), rasfor () и т. Д. Записаны в моем предыдущем блоге, нажмите здесь
объект местоположения
Вместо того, чтобы быть объектом в роде, местоположение является свойством в окне. Конечно, это также свойство объекта документа в DOM, которое будет обсуждаться позже. То есть Window.Location и Document.Location обращайтесь к одному и тому же объекту.
Список атрибутов объекта местоположения, изменение этих атрибутов может загрузить новую страницу и генерировать новую запись в истории. Использование location.replace () больше не будет генерировать новые записи в исторических записях.
| хэш | "#Contents" | Возвращает хэш в URL, а не "" |
| хозяин | "www.google.com" | Возвращает имя сервера и номер порта (если есть) |
| имя хоста | "www.google.com" | Возвращает имя сервера без номера порта |
| href | "www.google.com" | Возвращает полный URL -адрес текущей страницы и вызовы назначения () |
| ПАТНА | ''/wileycda/' | Вернуться к имени каталога |
| порт | "8080" | Возвращает номер порта, если нет, возвращает пустую строку |
| протокол | "http:" | Вернуться к протоколу, используемому страницей |
| Поиск | "? = JavaScript" | Возвращает строку запроса, начиная с отметки вопроса |
Объект Navigator: стандарт де -факто, используемый для идентификации браузеров, а его свойства и методы в основном используются для обнаружения типов браузеров.
Остальные похожи на объекты истории (сохранение исторических записей) и объектов экрана (показывая возможности клиента). Поскольку программирование в JS не очень эффективно, я не буду повторять их.
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------. ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------.
Дом:
DOM - это API, который распространяется для HTML на основе XML, и DOM полагается на деревья узлов для расширения.
Прежде всего, необходимо прояснить, что узел документа является корневым узлом каждого узла. Узел документа имеет только один дочерний узел, а именно HTML (элемент документа).
Тип узла:
Интерфейс в DOM1 реализован всеми типами узлов (текстовые узлы, узлы атрибутов, узлы элементов), и этот интерфейс реализован как тип узла в JS.
атрибут Nodetype, принадлежащий каждому узлу. Обозначен 12 численными значениями, элемент-1, атрибут-2, текст-3 ...
Атрибут NodeName, для узла элемента, значение NodeName - это имя метки.
Атрибут Nodevalue, для узла элемента, значение Nodevalue NULL.
Отношение узла: каждый узел имеет атрибут ChildNodes, который сохраняет объект Nodelist (класс массива). Каждый узел имеет свойство ParentNode, указывая на родительский узел. Узлы у детей имеют одинаковый родитель. Используйте свойства предыдущих и обязательств для доступа к узлам братьев и сестер. В то же время, ChildNodes [0] == FirstChild, ChildNodes [ChildNodes.length-1] == LastChild.
Узел операции: AppendChild (), подтолкните узел до конца Nodelist и верните недавно добавленный узел. INSERTBEFOR (), верните узел в заголовок Nodelist без устранения и верните новый узел. Replacechild (Newchild, TargetChild) заменяет целевой узел. Оригинальный узел все еще находится в документе, но там нет местоположения. RemoveChild (Tragetchild), удаляет узел, а эффект аналогичен replacechild (). Clonechild (логический), когда это правда, означает полную репликацию (весь узел и узел дочернего узела), False означает базовую репликацию.
Тип документа:
Представляет документ, объект документа является экземпляром HTMldDocument (унаследованного от типа документа), представляющего всю страницу HTML. В то же время объект Douent также является свойством окна, поэтому к нему можно получить доступ к глобальному объекту. Document.firstchild == html. Document.Body == Body. document.doctype ---> Ссылка на <! Doctype>. Doucment.title ---> Title Document.url ---> location.url.
Найдите элементы: getElementbyId (), getElementsbytagname (), getelementsbyclassname ().
Запись документа: write (), writeeln (), open (), close ()
Тип элемента:
getattribute (), Получить функцию для класса, использовать «класс», а не имя класса, и атрибут класса можно получить при использовании element.classname.
SetAtTribute (), устанавливает функцию, если функция существует, замените ее. В противном случае, создайте.
RemoveAttribute () Полностью удаляет характеристики элементов.
CreateElement (), создайте новый элемент.
Тип текста:
CreateTexTnode (), создает текстовые узлы. Если текстовый узел подключен к соседнему узлу соотечественника, два текста будут подключены без пробелов.
The above article's composition of JavaScript------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------