this.id
(あなたが知っているように)
this.value
(ほとんどの入力タイプで、私が知っている唯一の問題は、要素にプロパティが設定され<select>
ていない場合のIE か、Safariのラジオ入力です。)value
<option>
this.className
「クラス」プロパティ全体を取得または設定するには
this.selectedIndex
に対して<select>
選択されたインデックスを取得する
this.options
反対<select>
のリストを取得するための<option>
要素を
this.text
<option>
テキストコンテンツを取得することに対して
this.rows
反対<table>
のコレクションを取得するための<tr>
要素を
this.cells
<tr>
そのセルを取得するaに対して(td&th)
this.parentNode
直接の親を取得する
this.checked
Thanks @Tim Downのチェック状態を取得するにはcheckbox
this.selected
感謝の選択状態を取得するにはoption
@Tim Down
this.disabled
ありがとう@Tim Downの無効状態を取得するにはinput
this.readOnly
Thanks @Tim Downの readOnly状態を取得するinput
this.href
<a>
取得する要素に対してhref
this.hostname
<a>
のドメインを取得する要素に対してhref
this.pathname
<a>
のパスを取得する要素に対してhref
this.search
<a>
要素に対してクエリ文字列を取得するhref
this.src
を持つことが有効な要素に対して src
...あなたはアイデアを理解していると思います。
パフォーマンスが重要になる場合があります。ループで何かを何度も実行している場合のように、jQueryを破棄したい場合があります。
一般的に、次のものを置き換えることができます。
$(el).attr('someName');
と:
上記の言葉遣いは不十分でした。getAttribute
置換ではありませんが、サーバーから送信された属性の値を取得し、対応setAttribute
する属性が設定します。場合によっては必要です。
以下の文章はそれをカバーしている。より良い治療法については、この回答を参照してください。
el.getAttribute('someName');
...属性に直接アクセスするため。属性はプロパティと同じではないことに注意してください(ただし、それらは相互にミラーリングする場合があります)。もちろんありsetAttribute
ます。
特定のタイプのすべてのタグをアンラップする必要があるページを受け取ったとしましょう。jQueryを使用すると、短くて簡単です。
$('span').unwrap(); // unwrap all span elements
しかし、多数ある場合は、少しネイティブなDOM APIを実行することをお勧めします。
var spans = document.getElementsByTagName('span');
while( spans[0] ) {
var parent = spans[0].parentNode;
while( spans[0].firstChild ) {
parent.insertBefore( spans[0].firstChild, spans[0]);
}
parent.removeChild( spans[0] );
}
このコードはかなり短く、jQueryバージョンよりもパフォーマンスが高く、個人用ライブラリで再利用可能な関数に簡単に変更できます。
のwhile
せいでwhile(spans[0])
、外側に無限ループがあるように見えるかもしれませんが、「ライブリスト」を扱っているため、を実行すると更新されparent.removeChild(span[0]);
ます。これはかなり気の利いた機能であり、代わりに配列(または配列のようなオブジェクト)を操作するときに見逃しています。
this.id
か?