淺析JS動(dòng)態(tài)創(chuàng)建元素【兩種方法】
前言:
創(chuàng)建元素有兩種方法
1)將需要?jiǎng)?chuàng)建的元素,以字符串的形式拼接;找到父級(jí)元素,直接對(duì)父級(jí)元素的innnerHTML進(jìn)行賦值。
2)使用Document、Element對(duì)象自帶的一些函數(shù),來(lái)實(shí)現(xiàn)動(dòng)態(tài)創(chuàng)建元素(創(chuàng)建元素 => 找到父級(jí)元素 => 在指定位置插入元素)
一、字符串拼接形式
為了更好的理解,設(shè)定一個(gè)應(yīng)用場(chǎ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對(duì)象自帶的一些函數(shù)
也設(shè)定一個(gè)應(yīng)用場(chǎng)景,如下圖
獲取input中的信息,根據(jù)右邊的按鈕,分別插入到下方紅色矩形的左邊或者右邊。

解決思路分三步:
- 創(chuàng)建元素:Document.createElement()
- 找到父級(jí)元素 :可以通過(guò)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、找到父級(jí)元素
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、找到父級(jí)元素
container.appendChild(span); //3、在末尾中添加元素
}
}
</script>
以上這篇淺析JS動(dòng)態(tài)創(chuàng)建元素【兩種方法】就是小編分享給大家的全部?jī)?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對(duì)象增加和刪除元素方法總結(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)置對(duì)象添加新的方法
這篇文章主要介紹了Javascript中prototype屬性實(shí)現(xiàn)給內(nèi)置對(duì)象添加新的方法,涉及javascript中prototype屬性的使用技巧,需要的朋友可以參考下2015-05-05
JS實(shí)現(xiàn)字符串轉(zhuǎn)駝峰格式的方法
這篇文章主要介紹了JS實(shí)現(xiàn)字符串轉(zhuǎn)駝峰格式的方法,結(jié)合實(shí)例形式分析了傳統(tǒng)的字符串遍歷轉(zhuǎn)換及正則替換兩種操作技巧,需要的朋友可以參考下2016-12-12
JS中touchstart事件與click事件沖突的解決方法
這篇文章主要給大家介紹了關(guān)于JS中touchstart事件與click事件沖突的解決方法,文中通過(guò)示例代碼將解決的方法介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。2018-03-03
JavaScript之生成器_動(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 語(yǔ)法
文章主要是介紹了通過(guò)一個(gè)第三方類庫(kù)RazorJS,實(shí)現(xiàn)Javascript 文件里使用 .Net MVC Razor 語(yǔ)法,很巧妙,推薦給大家2014-07-07
js實(shí)現(xiàn)自定義滾動(dòng)條的示例
這篇文章主要介紹了js實(shí)現(xiàn)自定義滾動(dòng)條的示例,幫助大家制作JS特效,美化自身網(wǎng)頁(yè),感興趣的朋友可以了解下2020-10-10

