2012-08-15 10 views
6

ボタンまたはリンク上にあるすべてのアクセスキーを取得します。私には次のものがあります。

$(":button[accesskey!=''], :a[accesskey!='']").each(function(i) { 
//code 
}); 

あなたは私はあなたがカンマを使用してそれらを分離することによって、複数のセレクタを持つことができますが、上記のコードは動作しませんと思ったここhttp://jsfiddle.net/QNPZU/

をそれを見ることができます。私は

$(":*[accesskey!='']").each(function(i) { 
//code 
}); 

を行う場合

それは動作しますが、私は、DOMが巨大であれば、それはパフォーマンスの問題があるでしょう取りますか?

答えて

10

次のことができ、コード:

$("button[accesskey], a[accesskey]").each(function(i) { 
    //code 
}); 
+0

本当にありますか?ボタンは推奨されていません。 – Karsten

+0

@Karsten ':button'と':radio'の中にあり、いくつかのセレクタはjQuery 1.7で廃止され、jQueryの開発者は突然廃止通知を削除しました。今私は、 "xセレクターは廃止されました"という答えはもうありません。これはもはや真実ではありません。その一つがこの答えです。いいですよ。ありがとう。 – undefined

0

チェックこの更新フィドル:http://jsfiddle.net/techfoobar/QNPZU/2/

2つの問題ワットがありましたあなたのコード。

a。リンクとボタンを選択するには、:a:button

bではなく、abuttonを使用する必要があります。単にa[accesskey]を使用して、accesskeyという属性を持つ項目を選択できます。あなたは使用する必要はありませんa[accesskey!=""]

+0

お返事ありがとうございます。コロンはどう違うの? – Decrypter

+0

API:http://api.jquery.com/element-selector/ – techfoobar

+1

':XYZ'表記は、visible、:checkedなどの実行時プロパティを使用したフィルタリングです。指定されたタグのすべての要素を選択するには、 API docで指定されたタグ名(前のコメント) – techfoobar

関連する問題