最新公告  | 
  • CTRL + D 加入收藏不迷路哦

  • 欢迎您光临码云笔记网,一个关注WEB前端开发的个人技术博客!

[jQuery教程]DOM节点的创建方法(四)

DOM由节点构成,理解和掌握节点是很重要的,本章介绍如何创建DOM节点及节点属性。

[jQuery教程]DOM节点的创建方法(四)

DOM创建节点及节点属性

通过JavaScript可以很方便的获取DOM节点,从而进行一系列的DOM操作。但实际上一般开发者都习惯性的先定义好HTML结构,但这样就非常不灵活了。

试想下这样的情况:如果我们通过AJAX获取到数据之后然后才能确定结构的话,这种情况就需要动态的处理节点了。

本文向大家介绍一下如何使用JavaScript创建div节点元素,主要包括创建div节点元素的属性和创建div节点元素的样式两大部分内容,相信本文介绍一定会让你有所收获。

先介绍下需要用到的浏览器提供的一些原生的方法(这里不处理低版本的IE兼容问题)。

创建流程比较简单,大体如下:

  1. 创建节点(常见的:元素、属性和文本)
  2. 添加节点的一些属性
  3. 加入到文档中

流程中涉及的一点方法:

  1. 创建元素:document.createElement
  2. 设置属性:setAttribute
  3. 添加文本:innerHTML
  4. 加入文档:appendChild

我们看一下下面简单例子
HTML代码:

<h2>动态创建元素节点</h2>
<div class="left">
	<div class="aaron">点击body区域会动态创建元素节点</div>
</div></pre>

CSS代码:

.left,
.right {
	width: 300px;
	height: 120px;
}

.left div,
.right div {
	width: 100px;
	height: 90px;
	padding: 5px;
	margin: 5px;
	float: left;
	border: 1px solid #ccc;
}

.left div {
	background: #bbffaa;
}

.right div {
	background: yellow;
}

javascript代码:

var body = document.querySelector('body');

document.addEventListener('click', function() {

	//创建2个div元素
	var rightdiv = document.createElement('div')
	var rightaaron = document.createElement("div");

	//给2个div设置不同的属性
	rightdiv.setAttribute('class', 'right')
	rightaaron.className = 'aaron'
	rightaaron.innerHTML = "动态创建DIV元素节点";

	//2个div合并成包含关系
	rightdiv.appendChild(rightaaron)

	//绘制到页面body
	body.appendChild(rightdiv)

}, false)

效果展示:

DOM创建节点及节点属性

如上面代码所示,写一个最简单的元素创建,我们会发现几个问题:

  1. 每一个元素节点都必须单独创建
  2. 节点是属性需要单独设置,而且设置的接口不是很统一
  3. 添加到指定的元素位置不灵活
  4. 最后还有一个最重要的:浏览器兼容问题处理

针对这一系列的DOM操作的问题,jQuery给出了一套非常完美的接口方法,我们之后就开始深入学习。

jQuery节点创建与属性的处理

上面介绍了通过JavaScript原生接口创建节点,在处理上是非常复杂与繁琐的。我们可以通过使用jQuery来简化了这个过程

创建元素节点

可以有几种方式,后面会慢慢接触。常见的就是直接把这个节点的结构给通过HTML标记字符串描述出来,通过$()函数处理,$(“html结构”)

$("<div></div>")

创建为本节点:

与创建元素节点类似,可以直接把文本内容一并描述:

$("<div>我是文本节点</div>")

创建为属性节点:

与创建元素节点同样的方式

$("<div id='test' class='aaron'>我是文本节点</div>")

我们通过jQuery把上面的代码改造一下,如下代码所示:

var $body = $('body');
$body.on('click', function() {
    //通过jQuery生成div元素节点
    var div = $("<div class='right'><div class='aaron'>动态创建DIV元素节点</div></div>")
    $body.append(div)
})

一条一句就搞定了,跟写HTML结构方式是一样的

$("<div class='right'><div class='aaron'>动态创建DIV元素节点</div></div>")

这就是jQuery创建节点的方式,让我们保留HTML的结构书写方式,非常的简单、方便和灵活。

1. 本站所有免费资源来源于用户上传和网络,因此不包含技术服务请大家谅解!如有侵权请邮件联系客服!
2. 本站不保证所提供下载的免费资源的准确性、安全性和完整性,免费资源仅供下载学习之用!如有链接无法下载、失效,请联系客服处理!
3. 您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容资源!如用于商业或者非法用途,与本站无关,一切后果请用户自负!
4. 如果您也有好的资源或技术教程,您可以投稿发布,成功分享后有站币奖励和额外收入!
5. 加入前端开发QQ群:565733884,我们大家一起来交流技术!
码云笔记 » [jQuery教程]DOM节点的创建方法(四)

发表评论