您好,登錄后才能下訂單哦!
首先說一下利用JQuery函數動態創建元素,
- <div id="testDiv">測試圖層</</span>div>
- <script type="text/javascript">
- document.getElementByIdx_x_x("testDiv").innerHTML = ""border:solid 1px #FF0000\">動態創建的div
- ";
- </script>
在頁面上動態添加了一個div,但是這種創建是不可取的,因為這是在頁面還正在加載的時候動態創建的,改變了頁面結構,如果在網速太慢或者響應時間過長的情況下會報腳本錯誤,也就是說永遠不要在頁面加載時改變頁面的DOM模型。
正確建法:
$(function(){
$("
動態創建的DIV
");
})
根據HTML原始字符串動態創建DOM模型。
如果html字符串是沒有屬性的元素時,JQuery在內部使用了document_createElement()方法來創建。
$("").css("border","1px solod #c1c1c1").html("動態創建的DIV").appendTo(testDiv));
//appendTo()方法是在被選元素的末尾插入內容。
否則JQuery內部用innerHtml方法來創建:
$("
動態創建的DIV
").appendTo(testDiv);
上面只是創建元素的方式,下面我們來在頁面加載完畢后添加元素。
利用JQuery會簡便許多( 在圖像和外部資源加載之前執行函數):
$(function)(){
$("#testDiv").html("
動態創建的DIV
");
}
利用JQuery$()可以綁定多個函數,如果使用傳統的window.onload()只會調用一個函數。
————————————————
既然創建了元素,那么就要把這些元素封裝到JQuery的包裝集中,然后就可以在包裝集中調用這些函數,用來改變原始jQuery包裝集, 并且大部分返回的都是過濾后的jQuery包裝集。
比如過濾filtering中的map(),是將一組元素轉換成數組(不論是否是元素數組),這個方法可以將所選元素里的值建立一個列表,或者是數組形式。
- $("p").append($("input").map(function(){
- return $(this).val();
- }).get().join(","));
//append()和appendTo()
比如$("
動態創建的DIV
").appendTo(testDiv);
使用這個方法其實是顛倒了常規的$(A).append(B),即不是將B添加到A中,而是將A添加到B中。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。