简化document.createElement("div")动态生成层方法

摘要:
我们在WEB开发时,很多时候往往需要我们JavaScript来动态建立html元素,动态的设置相关的属性。比方说我们想要建立一個div层,则可以使用以下代码实现。一.直接建立functionButton1_onclick()//直接采用代码建立一个DIV{varnewElement=document.createElement;varnewText=document.createTextNode('这是新建立div中的文字。');}怎看之下这两个方法似乎使用了较长的代码块来达成相同的目的,其实不然,不过createEI这个通用方法实用性要强的多,在建立同类对象时性能会好的多。

我们在WEB开发时,很多时候往往需要我们 JavaScript 来动态建立 html 元素,动态的设置相关的属性。比方说我们想要建立一個 div 层,则可以使用以下代码实现。

一.直接建立
function Button1_onclick() //直接采用代码建立一个DIV
{
var newElement = document.createElement('div');
var newText = document.createTextNode('这是新建立 div 中的文字。');
document.body.appendChild(newElement); //漏了这一句,否则行不通
newElement.id = 'newDiv';
newElement.className = 'newDivClass';
newElement.setAttribute('name ','newDivName');
newElement.style.width = '300px';
newElement.style.height = '200px';
newElement.style.margin = '0 auto';
newElement.style.border = '1px solid #DDD';
newElement.appendChild(newText);
}

二.把建立新对象写成一个通用方法,增加其通用性
createEl = function(t, a, y, x)//编写建立一个新对象的通用方法
{
var e = document.createElement(t);
document.body.appendChild(e); //漏了这一句,否则行不通
if (a) {
for (var k in a) {
if (k == 'class') e.className = a[k];
else if (k == 'id') e.id = a[k];
else e.setAttribute(k, a[k]);
}
}
if (y) { for (var k in y) e.style[k] = y[k]; }
if (x) { e.appendChild(document.createTextNode(x)); }
return e;
}

//再通过以下方法来进行调用建立一个新层
function Button2_onclick() //先把建立一个新的DIV的方法写成一个通用方法,然后通过调用方法实例化建立DIV
{
var newElement = createEl('div',
{'class': 'newDivClass', id: 'newDiv', name: 'newDivName'},
{ '300px', height:'200px', margin:'0 auto', border:'1px solid #DDD'},
'这是新建立div 中的文字。');

}

怎看之下这两个方法似乎使用了较长的代码块来达成相同的目的,其实不然,不过createEI这个通用方法实用性要强的多,在建立同类对象时性能会好的多。

免责声明:文章转载自《简化document.createElement("div")动态生成层方法》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇OpenStack 镜像制作之cloud-init简单实用SQL脚本下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

js设置div透明度

原生js设置透明度 为了兼容IE与其他浏览器对透明度的设置,我们需要对以上两种样式分别进行设置; 复制代码代码如下:var alpha = 30; //透明度值变量 var oDiv = document.getElementById('div1'); //获取DOM元素对象 oDiv.style.filter = 'alpha(opacity:'+alp...

在可编辑div中插入文字或图片的问题解决思路

最近在网上碰到一个人问了我一个问题,在可编辑div中插入文字或者图片。因为web在线编辑器我从来只是用,基本不会去研究源代码。后来正好一个在线聊天web项目中也要用到这个功能,我就特地看看了代码。 基本上编辑器或者在线聊天web页面,是不太可能用textarea在做输入框的,因为我们可能要插入图片或者超级链接,因此选择在iframe或者div作为输入框是必...

鼠标拖动DIV移动

直接上代码: <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title></title> <script src="http://t.zoukankan.com/Scripts/jquery-1.4....

DIV Scroll属性

DIV Scroll属性详解,为DIV层打造不同的滚动条。 一、scrollbar属性、样式详解1.overflow内容溢出时的设置(设定被设定对象是否显示滚动条) overflow-x水平方向内容溢出时的设置 overflow-y垂直方向内容溢出时的设置 以上三个属性设置的值为visible(默认值)、scroll(出现滚动条)、hidden(隐藏)、a...

css定义div圆角阴影边框

2013-11-01 设置div的圆角边框  首先给大家上个图片展示吧     1、首先下载Pie文件,在http://css3pie.com/下载Pie.js文件,最好是里面的文件不要删减,我是直接用的  2、然后上hmtl代码吧      <div>  111111111111111</div>   css样式:     &l...

根据RadioButtonList动态显示隐藏Div

使用场景 今天在写项目的时候遇到一个需求,注册页面,用户先选择类型继而填表单,所以需要根据选择切换表单,使用的前端框架是MiniUI,但是在实现这个功能的时候mini.get()方法无法得到div元素,所以使用原生js通过修改css来实现隐藏显示的功能。 基础代码 使用的是MiniUI的单选按钮组件,Api文档中有写valuechanged方法,但是添加到...