document.createElement(nodename) ——通过指定名称创建一个元素
document.createTextNode(text)——创建文本节点
element.setAttribute(attributename,attributevalue)——添加指定的属性,并为其赋指定的值
appendChild() ——向节点的子节点列表的末尾添加新的子节点
hasOwnProperty()——返回一个布尔值,指示对象自身属性中是否具有指定的属性
该方法会忽略掉那些从原型链上继承到的属性。
标签的 target 属性规定在何处打开链接文档。
target:
_blank — 在新窗口中打开被链接文档
_self — 默认。在相同的框架中打开被链接文档。
_parent — 在父框架集中打开被链接文档。
_top — 在整个窗口中打开被链接文档。
framename — 在指定的框架中打开被链接文档
// 创建构造器
var MYAPP = {};
MYAPP.dom = {};
MYAPP.dom.Element = function (type, properties) {
// 创建DOM元素
var tmp = document.createElement(type);
// 为DOM元素添加属性
for (var i in properties) {
// 判断是否为自身属性
if (properties.hasOwnProperty(i)){
tmp.setAttribute(i, properties[i]);
}
}
return tmp;
}
// 创建文本
MYAPP.dom.Text = function (txt) {
return document.createTextNode(txt);
}
// 使用构造器
var link = new MYAPP.dom.Element('a', {href: 'www.baidu.com', target: '_blank'});
var text = new MYAPP.dom.Text('click me');
link.appendChild(text);
document.body.appendChild(link);
// <a href="www.baidu.com" target="_blank">click me</a>