この記事の例では、JQuery を使用して DOM ノードを挿入する方法を説明します。皆さんの参考に共有してください。具体的な分析は次のとおりです。
HTML 要素を動的に作成することは、新しく作成された要素をドキュメントに挿入する必要があるため、実際には役に立ちません。新しく作成したノードをドキュメントに挿入する最も簡単な方法は、そのノードをドキュメント内のノードの子ノードにすることです。以前はメソッド append() を使用してノードを挿入しました。これにより、要素内に新しく作成されたコンテンツが追加されます。
新しく作成したノードをドキュメントに挿入する方法は 1 つだけではなく、以下の表に示すように、JQuery には他の方法も用意されています。読者は実際のニーズに基づいて柔軟にさまざまな選択を行うことができます。
HTML DOM 構造は次のとおりです:
<p class="nm_p" title="欢迎访问脚本之家" >欢迎访问脚本之家</p> <ul class="nm_ul"> <li title='PHP编程'>简单易懂的PHP编程</li> <li title='JavaScript编程'>简单易懂的JavaScript编程</li> <li title='JQuery编程'>简单易懂的JQuery编程</li> </ul>
append()
一致する各要素内にコンテンツを追加します:
HTML コード:
言いたいこと:
言いたいこと: こんにちは< /b> ;
appendTo()
一致するすべての要素を指定された要素に追加します。実際、このメソッドを使用すると、通常の $(A).append(B) 操作が逆になります。つまり、B を A に追加する代わりに、A を B に追加します。
HTML コード:
言いたいこと:
jQuer コード:言いたいこと: こんにちは< /b> ;
prepend()
一致する各要素内のコンテンツを先頭に追加します:HTML コード:
言いたいこと:
jQuer コード:こんにちは言いたいこと:
prependTo()
一致するすべての要素を指定された要素の先頭に追加します。実際、このメソッドを使用すると、通常の $(A).prepend(B) 操作が逆になります。つまり、B を A の先頭に追加する代わりに、A を B の先頭に追加します。HTML コード:
言いたいこと:
こんにちは言いたいこと:
after()
一致する各要素の後にコンテンツを挿入します:
HTML コード:
言いたいこと:
言いたいこと:
< ;b>良いですねinsertAfler()
一致するすべての要素を指定された要素の後に挿入します。実際、このメソッドを使用すると、通常の $(A).after(B) 操作が逆になります。つまり、A の後に B を挿入する代わりに、B の後に A が挿入されます。
HTML コード:
言いたいこと:
jQuer コード:言いたいこと:
< ;b>良いですね前()
一致する各要素の前にコンテンツを挿入します:HTML コード:
言いたいこと:
jQuer コード:欲しいです言いたいこと:
insertBefore()
一致するすべての要素を指定された要素の前にプッシュします。実際、このメソッドを使用すると、通常の $(A).before(B) 操作が逆になります。つまり、A の前に B を挿入する代わりに、B の前に A を挿入します。HTML コード:
言いたいこと:
欲しいです言うこと:
这些插入节点的方法不仅能将新创建的DOM元素插入到文档中,也能对原有的DOM元素进行移动。例如利用它们创建新元素并对其进行插入操作:
$(function(){ var $li_1 = $("<li title='新增节点:数据结构'>新增节点:数据结构</li>"); // 创建第一个<li>元素 var $li_2 = $("<li title='新增节点:设计模式'>新增节点:设计模式</li>"); // 创建第二个<li>元素 var $li_3 = $("<li title='新增节点:计算机算法'>新增节点:计算机算法</li>"); // 创建第三个<li>元素 var $parent = $(".nm_ul"); // 获取<ul>节点。<li>的父节点 var $two_li = $(".nm_ul li:eq(1)"); // 获取<ul>节点中第二个<li>元素节点 $("#btn_1").click(function(){ $parent.append($li_1); // 添加到<ul>节点中,使之能在网页中显示 }); $("#btn_2").click(function(){ // 可以采取链式写法:$parent.append($li_1).append($li_2); $parent.append($li_2); }); $("#btn_3").click(function(){ // insertAfter方法将创建的第三个<li>元素元素插入到获取的<li>之后 $li_3.insertAfter($two_li); }); });
也利用它们对原有的DOM元素进行移动:
$(function(){ var $one_li = $("ul li:eq(1)"); // 获取<ul>节点中第二个<li>元素节点 var $two_li = $("ul li:eq(2)"); // 获取<ul>节点中第三个<li>元素节点 $two_li.insertBefore($one_li); //移动节点 });
希望本文所述对大家的jQuery程序设计有所帮助。