動態生成HTML元素併為元素追加屬性
動態生成HTML元素的方法由三種:
第一種:document.createElement()
建立元素,再用appendChild()
方法將元素新增到指定節點;
新增a元素:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<div id="main">
<span id="login"></span>
</div>
</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>
<div id="main">
<span id="login"></span>
</div>
</body>
<script>
var link = document.createElement('a');
//使用innerHTML將元素直接新增到指定節點
main.innerHTML = "<a href='#' id='login' style='color: red;'>登入</a>";
</script>
</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()
方法顛倒
<!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" style="color:pink">登入</a>');
$('#main').append($link);
})
</script>
</head>
<body>
<div id="main"></div>
</body>
</html>
javascript動態追加html元素
主要有是兩種方案:
1.使用DOM
//使用createElement建立元素
var dialog = document.createElement('div');
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 =[
'<li class="monitory-point-li" indexcode="00000000001310013631">',
'<span class="checkbox-unchecked"></span>',
'<span class="monitory-text" title="'+name+'">'+formedName+'</span>',
'</li>'
].join(' ');
$('.document').append(popContent);
<div class="se-preview-section-delimiter"></div>
或者使用這種寫法
var popContent = '<li class="monitory-point-li" indexcode="00000000001310013631">'+
'<span class="checkbox-unchecked"></span>'+
'<span class="monitory-text" title="'+name+'">'+formedName+'</span>'+
'</li>';
$('.document').append(popContent);
相關文章
- html元素,屬性修改HTML
- v-bind 動態更新 HTML 元素上的屬性HTML
- HTML——② HTML 元素、屬性詳解HTML
- 動態生成的html元素繫結click事件HTML事件
- jQuery動態生成html元素的幾種方法jQueryHTML
- 動態生成HTML元素-模擬線上考試功能HTML
- 動態生成html元素繫結事件iphone失效問題解決HTML事件iPhone
- JavaScript動態新增或者刪除HTML元素JavaScriptHTML
- 動態建立節點並且給建立的元素新增屬性
- useHeadSafe:安全生成HTML頭部元素HTML
- HTML元素拖動JSHTMLJS
- 為什麼React元素有一個$$typeof屬性?React
- JavaScript在元素尾部追加字串JavaScript字串
- Zepto這樣操作元素屬性
- 行內元素屬性設定
- HTML 裡 img 元素的 src 和 srcset 屬性有何區別?HTML
- new/類/null/+/PrimitiveValue/valueOf/toString/環境/HTML 指令碼元素屬性NullMITHTML指令碼
- 如何在TypeScript程式碼裡獲得HTML元素的css屬性TypeScriptHTMLCSS
- HTML元素HTML
- HTML 元素HTML
- html元素滾動定位方法HTML
- HTML的display屬性將行內元素、塊狀元素、行內塊狀元素互相轉換以及三者的區別HTML
- HTML————3、HTML元素HTML
- img元素的object-fit屬性Object
- Android自動化-如何獲取檢視元素屬性?Android
- HTML 空元素 And 可替換元素HTML
- js動態建立元素,並控制元素樣式JS
- HTML form 元素HTMLORM
- HTML fieldset元素HTML
- HTML <p> 元素HTML
- HTML p元素HTML
- HTML <img> 元素HTML
- HTML <dialog> 元素HTML
- HTML 塊級元素和內聯元素HTML
- 行內元素的padding和margin屬性padding
- JavaScript動態新增li元素JavaScript
- 前端與移動開發----jQuery----JQuery動畫,JQ操作元素屬性,JQ操作元素樣式(大量案例)前端移動開發jQuery動畫
- 在一個元素上:hover,改變另一個元素的css屬性CSS