【转载】动态生成html元素并为元素追加属性

2018-07-20 06:15:40来源:博客园 阅读 ()

新老客户大回馈,云服务器低至5折

动态生成HTML元素的方法有三种:

第一种:document.createElement()创建元素,再用appendChild( )方法将元素添加到指定节点

 1 <!DOCTYPE html>
 2 <html lang="en">
 3 <head>
 4     <meta charset="UTF-8">
 5     <title></title>
 6 </head>
 7 
 8 <body>
 9 <div id="main">
10     <span id="login"></span>
11 </div>
12 </body>
13 
14 <script>
15     var link = document.createElement('a');
16     link.setAttribute('href','#');
17     link.setAttribute('id','login');
18     link.style.color = 'green';
19     link.innerHTML = '登录';
20     var main = document.getElementById('main');
21     main.appendChild(link);
22 </script>
23 
24 </html>

第二种:使用innerHTML直接将元素添加到指定节点

 1 <!DOCTYPE html>
 2 <html lang="en">
 3 <head>
 4     <meta charset="UTF-8">
 5     <title></title>
 6 </head>
 7 
 8 <body>
 9 <div id="main">
10     <span id="login"></span>
11 </div>
12 </body>
13 
14 <script>
15     var link = document.createElement('a');
16 
17     //使用innerHTML将元素直接添加到指定节点
18     main.innerHTML = "<a href='#' id='login' style='color: red;'>登录</a>";
19 </script>
20 
21 </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 <!DOCTYPE html> 
 2 <html lang="en">
 3 <head>
 4    <meta charset="UTF-8">
 5    <title></title>
 6    <script src="jquery-1.11.1.min.js"></script>
 7 
 8 <script>
 9    $(function(){
10    var link=$('<a href="#" id="link" style="color:pink">登录</a>');
11    $('#main').append(link);
12    })
13 </script>
14 </head>
15  
16 <body>
17    <div id="main"></div>
18 </body>
19 </html>

借鉴文档出处:https://blog.csdn.net/fredaouyang/article/details/56481458

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:揭秘黑客步骤:怎么盗取别人的微信密码?如何盗对方的微信号?

下一篇:火狐浏览器下,td 直接使用position:relative;和background:;产