这篇文章主要介绍了关于动态生成HTML元素并为元素追加属性,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下
动态生成HTML元素的方法由三种:
第一种:document.createelement()创建元素,再用appendchild()方法将元素添加到指定节点;
添加a元素:
html>
<meta>
<title></title> <p>
<span></span> </p> <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>
第二种:使用innerHTML直接将元素添加到指定节点:
html>
<meta>
<title></title> <p>
<span></span> </p> <script>
var link = document.createElement('a');
//使用innerHTML将元素直接添加到指定节点
main.innerHTML = "<a href='#' id='login' style='color: red;'>登录";
</script>
第三种: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()方法颠倒
html>
<meta>
<title></title>
<script></script>
<script>
$(function(){
var $link=$('<a href="#" id="link" style="color:pink">登录');
$('#main').append($link);
})
</script> <p></p>
javascript动态追加html元素
主要有是两种方案:
1.使用DOM
//使用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
var popContent =[ '
<p></p>
或者使用这种写法
var popContent = '
相关推荐:
前端入门到VUE实战笔记:立即使用
在学习笔记中,你将探索 前端 的入门与实战技巧!











