淺析JS動(dòng)態(tài)創(chuàng)建元素【兩種方法】
前言:
創(chuàng)建元素有兩種方法
1)將需要?jiǎng)?chuàng)建的元素,以字符串的形式拼接;找到父級元素,直接對父級元素的innnerHTML進(jìn)行賦值。
2)使用Document、Element對象自帶的一些函數(shù),來實(shí)現(xiàn)動(dòng)態(tài)創(chuàng)建元素(創(chuàng)建元素 => 找到父級元素 => 在指定位置插入元素)
一、字符串拼接形式
為了更好的理解,設(shè)定一個(gè)應(yīng)用場景。
隨機(jī)生成一組數(shù)字,將這組數(shù)據(jù)渲染為條形圖的形式,放在div[id="container"]中,如下圖
<div id="container"> </div> <script> window.onload = function () { var str=''; for(var i=0; i<30 ;i++){ var r = parseInt(Math.random()*100); //隨機(jī)生成一個(gè)數(shù)字 str += '<div>'+r+'</div>'; //拼接str } document.getElementById('container').innerHTML=str; } </script>
二、使用Document、Element對象自帶的一些函數(shù)
也設(shè)定一個(gè)應(yīng)用場景,如下圖
獲取input中的信息,根據(jù)右邊的按鈕,分別插入到下方紅色矩形的左邊或者右邊。
解決思路分三步:
- 創(chuàng)建元素:Document.createElement()
- 找到父級元素 :可以通過Id、name、標(biāo)簽名、class、匹配指定的css選擇器
- 在指定位置插入元素:element.appendChild()、element.insertBefore()
實(shí)現(xiàn)代碼:
<div id="div-input"> <input type="text" id="txt_input" value="4"/> <input type="button" id="leftInsert" value="左側(cè)入" /> <input type="button" id="rightInsert" value="右側(cè)入" /> </div> <div id="container"> <span>1</span> <span>2</span> <span>3</span> </div> <script> window.onload = function () { var inputValue= document.getElementById('txt_input').value; document.getElementById('leftInsert').onclick=function(){ //左側(cè)入 var span = document.createElement('span'); //1、創(chuàng)建元素 span.innerHTML=inputValue; var container = document.getElementById('container'); //2、找到父級元素 container.insertBefore(span,container.childNodes[0]);//插入到最左邊 } document.getElementById('rightInsert').onclick=function(){ //右側(cè)入 var span = document.createElement('span'); //1、創(chuàng)建元素 span.innerHTML=inputValue; var container = document.getElementById('container'); //2、找到父級元素 container.appendChild(span); //3、在末尾中添加元素 } } </script>
以上這篇淺析JS動(dòng)態(tài)創(chuàng)建元素【兩種方法】就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
- JS動(dòng)態(tài)創(chuàng)建元素的兩種方法
- js創(chuàng)建元素(節(jié)點(diǎn))示例
- JS中動(dòng)態(tài)創(chuàng)建元素的三種方法總結(jié)(推薦)
- JavaScript數(shù)組Array對象增加和刪除元素方法總結(jié)
- JS 添加刪除元素的實(shí)現(xiàn)代碼
- js中數(shù)組插入、刪除元素操作的方法
- javascript動(dòng)態(tài)創(chuàng)建及刪除元素的方法
- javascript刪除元素節(jié)點(diǎn)removeChild()用法實(shí)例
- JavaScript實(shí)現(xiàn)添加、查找、刪除元素
- javascript創(chuàng)建元素和刪除元素實(shí)例小結(jié)
相關(guān)文章
Javascript中prototype屬性實(shí)現(xiàn)給內(nèi)置對象添加新的方法
這篇文章主要介紹了Javascript中prototype屬性實(shí)現(xiàn)給內(nèi)置對象添加新的方法,涉及javascript中prototype屬性的使用技巧,需要的朋友可以參考下2015-05-05JS實(shí)現(xiàn)字符串轉(zhuǎn)駝峰格式的方法
這篇文章主要介紹了JS實(shí)現(xiàn)字符串轉(zhuǎn)駝峰格式的方法,結(jié)合實(shí)例形式分析了傳統(tǒng)的字符串遍歷轉(zhuǎn)換及正則替換兩種操作技巧,需要的朋友可以參考下2016-12-12JS中touchstart事件與click事件沖突的解決方法
這篇文章主要給大家介紹了關(guān)于JS中touchstart事件與click事件沖突的解決方法,文中通過示例代碼將解決的方法介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。2018-03-03JavaScript之生成器_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理
generator(生成器)是ES6標(biāo)準(zhǔn)引入的新的數(shù)據(jù)類型。一個(gè)generator看上去像一個(gè)函數(shù),但可以返回多次,有興趣的可以了解一下。2017-06-06教你如何在 Javascript 文件里使用 .Net MVC Razor 語法
文章主要是介紹了通過一個(gè)第三方類庫RazorJS,實(shí)現(xiàn)Javascript 文件里使用 .Net MVC Razor 語法,很巧妙,推薦給大家2014-07-07js實(shí)現(xiàn)自定義滾動(dòng)條的示例
這篇文章主要介紹了js實(shí)現(xiàn)自定義滾動(dòng)條的示例,幫助大家制作JS特效,美化自身網(wǎng)頁,感興趣的朋友可以了解下2020-10-10