封装一个DivTag,在页面加载的时候自动执行。用于创建任意的DOM节点,并且可以追加到任意的DOM节点上,可以设置样式,添加文本。
var element = {
__init__: function ( tagName ) {
//创建DOM标签
this.DOM = document.createElement( tagName );
},
//追加到dom节点上
appendTo: function ( node ) {
//如果是节点
if ( node.nodeType ) {
node.appendChild( this.DOM );
} else if ( node.DOM ) {
//如果是DivTag
node.DOM.appendChild( this.DOM );
}
return this;
},
//设置文本
html: function ( str ) {
this.DOM.innerHTML = str;
return this;
},
//设置样式
css: function ( option ) {
for ( var k in option ) {
this.DOM.style[ k ] = option[ k ];
}
return this;
},
//添加节点
add: function ( node ) {
if ( node.nodeType ) {
this.DOM.appendChild( node );
} else if ( node.DOM ) {
this.DOM.appendChild( node.DOM );
}
return this;
}
}; //创建一个div标签
function DivTag() {
this.__init__( 'div' );
}
//修改DivTag原型,给原型重新赋值,使原型具有该方法
DivTag.prototype = element;
//创建一个p标签
function PTag() {
this.DOM = document.createElement( 'p' );
}
//使p节点同样可以继承该方法
PTag.prototype = element; onload = function() {
new DivTag()
.html( '你好啊' )
.add( new PTag().html( '我是 p 标签' ) )
.css( {
border: '1px dashed red'
} )
.appendTo( document.body );
}

封装一个DivTag的更多相关文章

  1. 自己封装一个Log模块

    Unity自己有log系统,为什么要自己封装一个 1.不好用,只能在pc上记录log文件,移动平台是没有的 2.在开发时期的log,不想在正式版里面出现.没有一个统一的开关来控制是不是要显示log,要 ...

  2. PHP封装一个通用好用的文件上传处理类

    封装一个文件上传类完成基本功能如下: 1.可上传多个或单个文件 2.上传成功返回一个或多个文件名 3.上传失败则返回每个失败文件的错误信息 上传类中的基本功能: 1.构造参数,用户可以自定义配置参数, ...

  3. Swift - 简单封装一个工具类模板

    创建模板类(封装一个类) 例1:新建一个名字叫做 Product 的类 Product.swift File 的内容 class Product { var name: String var desc ...

  4. 使用xib封装一个自定义view的步骤

    使用xib封装一个自定义view的步骤 1> 新建一个继承UIView的自定义view,假设类名叫做(MJAppView) 2> 新建一个MJAppView.xib文件来描述MJAppVi ...

  5. yii2封装一个类控制div宽度,高度

    1.首先,封装一个类,放在文件夹vendor下,命名为articls.php. <?phpclass Articles{ //测试    function add()    {        r ...

  6. C 封装一个简单二叉树基库

    引文 今天分享一个喜欢佩服的伟人,应该算人类文明极大突破者.收藏过一张纸币类型如下 那我们继续科普一段关于他的简介 '高斯有些孤傲,但令人惊奇的是,他春风得意地度过了中产阶级的一生,而  没有遭受到冷 ...

  7. IOS中封装一个View的思路

    一.封装一个View的思路 1.将View内部的业务逻辑(显示内容)封装到View中 2.一般情况下,View的位置应该由父控件来决定,也就是位置不应该固定死在View内部 3.至于View的宽高,根 ...

  8. 使用libzplay库封装一个音频类

    装载请说明原地址,谢谢~~      前两天我已经封装好一个duilib中使用的webkit内核的浏览器控件和一个基于vlc的用于播放视频的视频控件,这两个控件可以分别用在放酷狗播放器的乐库功能和MV ...

  9. 简易封装一个带有占位文字的TextView

    在实际iOS应用开发中我们经常会用到类似于下图所示的界面,即带有占位文字的文本框:

随机推荐

  1. NEUQ1038: 谭浩强C语言(第三版)习题4.8

    之前没做对的一道题,今天集中清理一下. //------------------- 很水的题,主要是 %.2lf 不能四舍五入,需要仅保留两位小数,用了丑陋的强制类型转换... //--------- ...

  2. js常用语句写法

    1.for语句 for(var i = 0; i<6; i++) //0,1,2,3,4,5

  3. 原 iOS深入学习(Block全面分析)http://my.oschina.net/leejan97/blog/268536

    原 iOS深入学习(Block全面分析) 发表于1年前(2014-05-24 16:45)   阅读(26949) | 评论(14) 39人收藏此文章, 我要收藏 赞21 12月12日北京OSC源创会 ...

  4. Hive 行列转换

    一.列转行 (对某列拆分,一列拆多行) 使用函数:lateral view explode(split(column, ',')) num eg: 如表:t_row_to_column_tmp 数据如 ...

  5. Framebuffer原理、使用、测试系列文章,非常好的资料,大家一起学习

    转载:http://blog.csdn.net/tju355/article/details/6881372 *一.FrameBuffer的原理* FrameBuffer 是出现在 2.2.xx 内核 ...

  6. C# DataTable转实体通用方法

    public static class DataTableHelper { public static T GetEntity<T>(DataTable table) where T : ...

  7. python修炼7----迭代器

    迭代器 -------------------------------------------------------------------------------- 充电小知识 1.yield-- ...

  8. JSONObject处理java.util.Date

    JSONObject的内容为: {"userId":"A000004FFDCE14","userName":"好好干g" ...

  9. vsphere安装虚拟机

    新建虚拟机完成后,启动虚拟机,打开启动虚拟机控制台,选择CD/DVD驱动器 选择iso镜像,可以是本地或存储中心的iso,选择后点击虚拟机--客户机--发送Ctrl+Alt+Del,接下来就是正常的操 ...

  10. Hive中频繁报警的问题

    在使用Hive的过程中,是不是会在shell中报一堆警告,虽然说不影响正常使用,但是看着很烦人,而且指不定会影响数据的准确性和运行的稳定性. 警告的内容如下: Tue Aug :: CST WARN: ...