
|
网页的本质就是超级文本标记语言,通过结合使用其他的Web技术(如:脚本语言、公共网关接口、组件等),可以创造出功能强大的网页。因而,超级文本标记语言是万维网(Web)编程的基础,也就是说万维网是建立在超文本基础之上的。超级文本标记语言之所以称为超文本标记语言,是因为文本中包含了所谓“超级链接”点。 对html对象,首先要先提到Node节点,Node是一个接口,许多DOM类型从这个接口继承,并允许类似地处理(或测试)这些各种类型。有那些接口重Node继承其方法和属性?先看看本文章吧。apache php mysql为何写这篇文章?你可能做Web开发已经有一段时间,你是否有想过下列问题呢? EventTarget定义EventTarget 是一个由可以接收事件的对象实现的接口,并且可以为它们创建侦听器。 作用Element,document 和 window 是最常见的事件目标,但是其他对象也可以是事件目标,比如XMLHttpRequest,AudioNode,AudioContext 等等。 该接口的方法EventTarget.addEventListener()在EventTarget上注册特定事件类型的事件处理程序。 EventTarget.removeEventListener()EventTarget中删除事件侦听器。 EventTarget.dispatchEvent()将事件分派到此EventTarget。 我们自己实现EventTargetvar EventTarget = function() {
this.listeners = {};
};
EventTarget.prototype.listeners = null;
EventTarget.prototype.addEventListener = function(type, callback) {
if (!(type in this.listeners)) {
this.listeners[type] = [];
}
this.listeners[type].push(callback);
};
EventTarget.prototype.removeEventListener = function(type, callback) {
if (!(type in this.listeners)) {
return;
}
var stack = this.listeners[type];
for (var i = 0, l = stack.length; i < l; i++) {
if (stack[i] === callback){
stack.splice(i, 1);
return;
}
}
};
EventTarget.prototype.dispatchEvent = function(event) {
if (!(event.type in this.listeners)) {
return true;
}
var stack = this.listeners[event.type].slice();
for (var i = 0, l = stack.length; i < l; i++) {
stack[i].call(this, event);
}
return !event.defaultPrevented;
};Node定义Node是一个接口,许多DOM类型从这个接口继承,并允许类似地处理(或测试)这些各种类型。Node是一个接口,许多DOM类型从这个接口继承,并允许类似地处理(或测试)这些各种类型。 有那些接口重Node继承其方法和属性?Document, Element, CharacterData (which Text, Comment, and CDATASection inherit), ProcessingInstruction, DocumentFragment, DocumentType, Notation, Entity, EntityReference 接口相关的属性和方法属性Node.baseURI返回一个表示base URL的DOMString。不同语言中的base URL的概念都不一样。 在HTML中,base URL表示协议和域名,以及一直到最后一个'/'之前的文件目录。 Node.childNodes返回一个包含了该节点所有子节点的实时的NodeList。NodeList 是“实时的”意思是,如果该节点的子节点发生了变化,NodeList对象就会自动更新。 Node.firstChild返回该节点的第一个子节点,如果该节点没有子节点则返回null。 Node.lastChild返回该节点的最后一个子节点,如果该节点没有子节点则返回null。 方法那么重点来了! Node.appendChild()将一个节点添加到指定父节点的子节点列表末尾。 Node.contains()返回的是一个布尔值,来表示传入的节点是否为该节点的后代节点。 Node.cloneNode()返回调用该方法的节点的一个副本。 Element说明Element是非常通用的基类,所有 Document对象下的对象都继承它。这个接口描述了所有相同种类的元素所普遍具有的方法和属性。 这些继承自Element并且增加了一些额外功能的接口描述了具体的行为。 属性所有属性继承至它的祖先接口 Node, 和它所扩展的接口 EventTarget, 并且从以下部分继承了属性ParentNode, ChildNode, NonDocumentTypeChildNode, 和Animatable. Element.assignedSlot返回元素对应的 HTMLSlotElement 接口 Element.attributes返回一个与该元素相关的所有属性集合NamedNodeMap Element.classList返回该元素包含的class属性是一个DOMTokenList. Element.className它是一个 DOMString 表示这个元素的class. 方法那么重点来了! Element.closest()方法用来获取匹配特定选择器且离当前元素最近的祖先元素(也可以是当前元素本身)。如果匹配不到,则返回 null。 Element.getAttribute()返回元素上一个指定的属性值。如果指定的属性不存在,则返回 null 或 "" (空字符串)。 Element.getElementsByClassName()参数中给出类的列表,返回一个动态的 HTMLCollection ,这里面包含了所有持有这些类的后代元素。 HTMLElement作用HTMLElement 接口表示所有的 HTML 元素。一些HTML元素直接实现了HTMLElement接口,其它的间接实现HTMLElement接口。 属性那么重点来了! Event handlersHTMLElement.onTouchStart 方法HTMLElement.blur() void 元素失去焦点 GlobalEventHandlers定义GlobalEventHandlers接口描述了事件处理程序像HTMLElement常见的几个接口,文件,窗口,或WorkerGlobalScope Web Workers。这些接口可以实现更多的事件处理程序。 属性GlobalEventHandlers.onabort中断事件。 GlobalEventHandlers.onblur失去焦点事件。 GlobalEventHandlers.onfocus获取焦点事件。 元素接口该接口用于创建对应的元素。 回答前面问题通过上面的知识,我们了解到: end:只有通过上面的继承关系,我们得到的 DOM 元素才是一个完整的 HTML 对象,我们才能为它设置/获取属性、绑定事件、添加样式类等操作。相关文章: 相关视频: 以上就是一个完整的HTML对象是什么样的,如何生成?的详细内容,更多请关注php中文网其它相关文章! 网站建设是一个广义的术语,涵盖了许多不同的技能和学科中所使用的生产和维护的网站。 |
温馨提示:喜欢本站的话,请收藏一下本站!