本文摘自PHP中文网,作者不言,侵删。
这篇文章主要介绍了关于动态生成HTML元素并为元素追加属性,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下
动态生成HTML元素的方法由三种:
第一种:document.createElement()
创建元素,再用appendChild()
方法将元素添加到指定节点;
添加a元素:
1 2 3 4 5 6 7 8 9 10 11 12 | <!DOCTYPE html> < html lang = "en" > < head >
< meta charset = "UTF-8" >
< title ></ title > </ head > < body > < p id = "main" >
< span id = "login" ></ span > </ p > </ body > < script >
var link = document.createElement('a');
link.setAttribute('href','#');
link.setAttribute('id','login');
link.style.color = 'green';
link.innerHTML = '登录';
var main = document.getElementById('main');
main.appendChild(link);
</ script > </ html >
|
第二种:使用innerHTML
直接将元素添加到指定节点:
1 2 3 4 5 6 7 8 9 | <!DOCTYPE html> < html lang = "en" > < head >
< meta charset = "UTF-8" >
< title ></ title > </ head > < body > < p id = "main" >
< span id = "login" ></ span > </ p > </ body > < script >
var link = document.createElement('a');
//使用innerHTML将元素直接添加到指定节点
main.innerHTML = "< a href = '#' id = 'login' style = 'color: red;' >登录</ a >";
</ script > </ html >
|
第三种:jQuery
创建节点
jQuery中创建DOM对象,使用jQuery的工厂函数$()
完成,格式如下:
$(html);
$(html)
会根据传入的HTML标记字符串,创建一个DOM对象,并将这个DOM对象包装成一个jQuery
对象后返回.
jQuery中将创建的节点插入文本中,使用append()
等方法
jQuery中插入节点方法有:
1.append()
:向每个匹配的元素内部追加内容
2.appendTo()
:将所有匹配的元素追加到指定元素中,颠倒了常规的$(A).append(B)
方法,不是将B追加到A中,而是将A追加到B中
3.prepend()
方法:向每个匹配的元素内部前置内容
4.prependTo()
:将所有匹配的内容前置到指定的元素中,与prpend()
方法颠倒
5.after()
向每个匹配的元素之后插入内容
6.insertAfter()
将所有匹配的元素插入到指定元素的后面,与after()
方法颠倒
7.before()
在每个匹配的元素之前插入内容
8.insertBefore()
将每个匹配的元素插入到指定内容之前,与before()
方法颠倒
1 2 3 4 5 6 7 8 9 10 11 | <!DOCTYPE html> < html lang = "en" > < head >
< meta charset = "UTF-8" >
< title ></ title >
< script src = "jquery-1.11.1.min.js" ></ script >
< script >
$(function(){
var $link=$('< a href = "#" id = "link" style = "color:pink" >登录</ a >');
$('#main').append($link);
})
</ script > </ head > < body > < p id = "main" ></ p > </ body > </ html >
|
javascript动态追加html元素
主要有是两种方案:
1.使用DOM
1 2 3 4 5 6 7 8 9 10 11 12 | //使用createElement创建元素
var dialog = document.createElement('p');
var img = document.createElement('img');
var btn = document.createElement('input');
var content = document.createElement('span'); // 添加class
dialog.className = 'dialog'; // 属性
img.src = 'close.gif'; // 样式
btn.style.paddingRight = '10px'; // 文本
span.innerHTML = '您真的要GG吗?'; // 在容器元素中放入其他元素
dialog.appendChild(img);
dialog.appendChild(btn);
dialog.appendChild(span);
|
2.使用html template
1 2 3 4 5 6 7 | var popContent =[
'< li class = "monitory-point-li" indexcode = "00000000001310013631" >',
'< span class = "checkbox-unchecked" ></ span >',
'< span class = "monitory-text" title = "'+name+'" >'+formedName+'</ span >',
'</ li >'
].join(' ');
$('.document').append(popContent);
|
1 | < p class = "se-preview-section-delimiter" ></ p >
|
或者使用这种写法
1 2 3 4 5 | var popContent = '< li class = "monitory-point-li" indexcode = "00000000001310013631" >'+
'< span class = "checkbox-unchecked" ></ span >'+
'< span class = "monitory-text" title = "'+name+'" >'+formedName+'</ span >'+
'</ li >';
$('.document').append(popContent);
|
相关推荐:
jQuery操作html元素点击事件详解
以上就是动态生成HTML元素并为元素追加属性的详细内容,更多文章请关注木庄网络博客!
相关阅读 >>
Html如何调用js函数
Html li标签是干嘛的?Html li标签用法和属性的介绍
Html控件怎么实现隐藏
Html怎么进行页面跳转(重定向)
Html格式什么意思?
了解浏览器渲染网页的每个步骤机制!
Html如何设置首行缩进
Html怎么设置宋体
如何在Html中显示json数据
Html如何设置背景图片
更多相关阅读请进入《Html》频道 >>
人民邮电出版社
本书对 Vue.js 3 技术细节的分析非常可靠,对于需要深入理解 Vue.js 3 的用户会有很大的帮助。——尤雨溪,Vue.js作者
转载请注明出处:木庄网络博客 » 动态生成HTML元素并为元素追加属性