这篇文章主要介绍了关于动态生成html' target='_blank'>HTML元素并为元素追加属性,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下
动态生成HTML元素的方法由三种:第一种:document.createElement()创建元素,再用appendChild()方法将元素添加到指定节点;
添加a元素:
!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直接将元素添加到指定节点:
!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 >第三种: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()方法颠倒
!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 >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 templatevar popContent =[ li >p >或者使用这种写法
var popContent = li >相关推荐:
jQuery操作html元素点击事件详解
以上就是动态生成HTML元素并为元素追加属性的详细内容,html教程
郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。
新闻热点
疑难解答