翻訳者注: 実はここにはいくつか問題があります, document.querySelectorAll と jQuery セレクターには違いがあります。前者は NodeList を返しますが、後者は配列のようなオブジェクトを返します。
jQuery は、要素の挿入や削除などの DOM 操作にも頻繁に使用されます。ネイティブ メソッドを使用してこれらの操作を実行することもできますが、これには追加のコードを記述する必要があります。もちろん、使いやすくするために独自のヘルパー関数を作成することもできます。以下に、ページに要素を挿入する例をいくつか示します。
//---要素の挿入- ---
/* jQuery */
$(document.body).append("
div>" );
/* ネイティブアプローチが不十分*/
document.body.innerHTML = "
< /div> ;";
/* ネイティブ メソッドの改善*/
var frag = document.createDocumentFragment();
var myDiv = document.createElement("div");
myDiv.id = " myDiv";
var im = document.createElement("img");
im.src = "im.gif";
myDiv.appendChild(im);
frag.appendChild(myDiv) ;
document.body.appendChild(frag);
//----先行要素----
// 最後の行を除く
document.body.insertBefore(frag, document . body.firstChild);
CSS クラス jQuery では、DOM 要素の CSS クラスを簡単に追加、削除、確認できます。幸いなことに、ネイティブ メソッドを使用して簡単に実行することもできます。
// DOM 要素の参照を取得します
var el = document.querySelector(".main-content");
//---クラスを追加-----
/* jQuery */
$(el) .addClass("someClass ");
/* ネイティブ メソッド */
el.classList.add("someClass");
//---クラスを削除-----
/* jQuery */
$(el).removeClass("someClass");
/* ネイティブ メソッド*/
el.classList.remove("someClass"); --クラスですか---
/* jQuery */
if($(el).hasClass("someClass"))
/* ネイティブ メソッド*/
if(el. classList.contains(" someClass"))
CSS プロパティの変更
常に Javascript を通じて CSS プロパティを変更および取得します。これは、jQuery CSS 関数を使用するよりも簡単で高速です。必要なコードに矛盾はありません。
コードをコピー コードは次のとおりです:
// Get DOM element reference
var el = document.querySelector(".main-content");
//----Set CSS properties----
/ * jQuery */
$(el).css({
background: "#FF0000",
"box-shadow": "1px 1px 5px 5px red",
width: "100px" ,
height: "100px",
display: "block"
});
/* native*/
el.style.background = "#FF0000";
el .style.width = "100px";
el.style.height = "100px";
el.style.display = "block";
el.style.boxShadow = "1px 1px 5px 5px red ";
声明:この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。