jQuery.parseHTML()方法

jQuery 雜項方法jQuery 雜項方法

實例

使用一個HTML字串創建一個數組的Dom節點,並將它插入一個div

<div id="log"> <h3>Content:</h3> </div> <script> $(function () { var $log = $( "#log" ), str = "hello, <b>my name is</b> jQuery.", html = $.parseHTML( str ), nodeNames = []; //添加已解析的HTML $log.append( html ); //集合已解析HTML的節點名稱 $.each( html, function( i, el ) { nodeNames[i] = "<li>" + el.nodeName + "</li>"; }); // 插入節點名 $log.append( "<h3>Node Names:</h3>" ); $( "<ol></ol>" ) .append( nodeNames.join( "" ) ) .appendTo( $log ); }) </script>


定義和用法

$.parseHTML() 函數用於將HTML字串解析為對應的DOM節點數組。

注意:1. 該函數將使用原生的DOM元素創建函數把HTML字串轉換為一個DOM元素的集合,你可以將這些DOM元素插入到文檔中。
2. 如果沒有指定context參數,或該參數為null或undefined,則默認為當前document。如果創建的DOM元素用於另一個文檔,例如iframe,則應該指定該iframe的document對象。
安全考慮:大多數jQuery API都允許HTML字串在HTML中包含運行腳本。 jQuery.parseHTML()不會運行解析的HTML中的腳本,除非你明確將參數keepScripts指定為true。 不過,大多數環境仍然可以間接地執行腳本,例如:通過屬性。調用者應該避免 這樣做,並清理或轉義諸如URL、cookie等來源的任何不受信任的輸入,從而預防出現這種情況。 出於未來的相容性考慮,當參數keepScripts被省略或為false時,調用者應該不依賴任何運行腳 本內容的能力。


語法

$.parseHTML( htmlString [, context ] [, keepScripts ] )

參數 描述
htmlString String類型 需要解析並轉為DOM節點數組的HTML字串
context Element類型 指定在哪個Document中創建元素,默認為當前文檔的document
keepScripts Boolean類型 指定傳入的HTML字串中是否包含腳本,默認為false


jQuery 雜項方法jQuery 雜項方法