今天突然想到一个问题,我怎么才能实现对一个对象的连续操作呢,就像这样:
var root = new Root("00")
root.createChild("11").createChild("22").createChild("33");
当然,我的语言组织能力有限,也不知道该形容这种操作更合适,总之,我的意思是:
1、我要定义一个根节点00;
2、我要在根节点00下创建子节点11;
3,再在子节点下创建子节点22.。。。依次类推
该怎么实现这种操作呢,试了试,最后还是想到了一种方法来解决这个问题:
JS代码:
(
function(){
Root = function(id,name){
if(typeof id == 'string'){
this.node = document.getElementById(id);
var div = document.createElement("div");
div.innerHTML = name;
this.node.appendChild(div);
this.node = div;
return this;
}
}
Root.prototype.createChild = function(name){
var div = document.createElement("div");
div.innerHTML = name;
this.node.appendChild(div);
this.node = div;
return this;
}
}
)()
页面代码:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<script type="text/javascript" src="srcitp/root.js"></script>
</head>
<body id = "body">
</body>
<script type="text/javascript">;
var root = new Root("body","00");
root.createChild("11").createChild("22").createChild("33");
</script>
</html>
结果: