問題タブ [selectors-api]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
jquery - Sizzle および/または querySelectorAll - ネストされた要素の列挙の順序は?
ネストされた一連の DOM 要素がありul > li > ul > li
、セレクターli
を単独で使用している場合、Sizzle を実行するかdocument.querySelectorAll
、要素が返される順序を定義しますか?
返される順序には、「最上位が最初」、「葉ノードが最初」、または単に「ドキュメント順」が含まれますが、どれを指定するために書き留められたものを見たことがありません。
javascript - .parents() jquery なし - または親の場合は querySelectorAll
重複の可能性:
matchesSelector jsでevent.target.parentElementを確認してください
私は dom オブジェクトを持っています。その親、すべての親を のようなセレクターと照合したいのですquerySelectAll()
が、子ではなく親に対してです。jQuery の方法に似ていますが、下位.parents('selector')
互換性は必要ありません。また、図書館はありません。トートはブール値の戻り値を取ります。
これを自分で再帰関数/for/while using として書くことができmatchesSelector()
ます。あまり知られていない方法や、より効率的なコードを探しています。
処理を保存することは価値があります。何万もの一致チェック、またはそれ以上を考えてみてください。
javascript - querySelectorAll 無効な構文
エラー コンソールで次の 2 つのコード ブロックを実行してみてください。
最初の1つ。NodeList を出力します。
二つ目。エラーを生成します。
data-type=day
構文がOKでそうでないのはなぜdata-day=23
ですか? 属性値は常に次のようにラップする必要がありますdata-type='day'
か?
2番目のケースで発生する例外は次のとおりです。
[例外...「無効または不正な文字列が指定されました」コード:「12」nsresult:「0x8053000c (SyntaxError)」]
javascript - querySelectorAllを使用してフェッチされた要素を削除するにはどうすればよいですか?
これは簡単な答えがあるように思えますが、私はそれを見つけることができません。たぶん私は間違った用語を検索していますか?ライブラリは使用しないでください。クロスブラウザフォールバックは必要ありませんが、このプロジェクトのすべての最新バージョンを対象としています。
私はいくつかの要素を取得しています:
これは機能していますが、これらの要素を削除するにはどうすればよいですか?それらをループして実行するelement.parentNode.removeChild(element);
必要がありますか、それとも私が欠けている単純な関数がありますか?
javascript - querySelectorAll に相当する IE9
FF や Chrome では問題はありませんでしたが、IE9 ではこの方法でエラーが発生します。ここでサポートされていることが示されているため、使用できると思いました。
http://www.quirksmode.org/dom/w3c_core.html
しかし、実際にはそうではないようです。そうは言っても、その代わりに何を使用できますか?
編集:失敗した正確な行は次のとおりです。
querySelectorAll() を使用するのはこれが初めてです。ブラウザのバージョン番号は 9.0.8112.16421 です
編集 (再度): 2 台の別々のコンピューターでこのエラーを確認しました。ただし、共通点が 1 つあります。どちらも VMware 上で Windows 7 を実行しているということです。それは関係ありますか?
ブラウザ モードは IE9 でしたが、ドキュメント モードはデフォルトで quirks に設定されていました。Internet Explorer 9 標準に変更すると問題は解決しましたが、quirks がデフォルトの場合は、それを機能させる必要があります。
javascript - Firefox、クエリセレクターおよび表示可能な疑似セレクター
FirefoxのquerySelector()またはquerySelectorAll()関数で疑似セレクターを使用して可視性を検出する方法はありますか?特に私はこのようなことをしたいと思っています:
ブラウザの不整合やその他の実装について心配する必要はありません。Firefoxだけです。ありがとう!
編集:可視性は、表示がなしではなく、可視性が非表示ではないことによって定義されます。
javascript - jsPerf で data-xyz を使用すると querySelectorAll が機能するのに、コードでは機能しないのはなぜですか?
jsperf
、querySelectorAll
およびdata-xyz
属性をいじっています。
これが私の現在の jsperf です: jqmData と属性セレクター
重要な部分はjs
テストにあります:
角括弧 [] を使用していないことに注意してください。それでも正常に動作し、他のすべてのセレクターをフラットに打ち負かします。1 ページに 200 以上の data-role 要素を追加しましたが、それでも高速に動作しました。
次に、ここで自分のテストページを試してみましたが(Firebugを参照)、残念ながら...角括弧なしで省略した場合、nodeListは空です。
質問:
ダミーの Web サイトではなくそこでセレクターが機能するように、jsperf が使用している魔法は何ですか?
javascript - css/js属性セレクター[attr=value]で属性値を適切にエスケープする方法は?
css / js属性セレクターで属性をエスケープするにはどうすればよい[attr=value]
ですか?
具体的には、これは正しいですか?
Sizzleが実行の重いフォールバック関数を使用したくないので、これを行うための「標準的な方法」を探しています。
javascript - querySelectorAll を使用して、新しく作成された要素のループを作成します
私がやろうとしているのは、関数を使用して、作成した関数を使用して作成した新しい各要素をquerySelectorAll()
ターゲットにできるループを作成することです (正常に動作します)。これをテストするために使用したかったので、各項目をクリックすると、コンソールでクリックしたことが確認されます。この方法は私にとって初めてであり、Javascript 全般の学習も初めてです。したがって、アドバイスや説明は非常に役に立ちます。ありがとう。<li/>
getInput()
console.log()
<li/>
querySelectorAll()
javascript - Use querySelector between slash
Here the point with a exemple :
I want my querySelector
to only select "bmw".
I used it (below), but it's only select the end of the sentence and not the value between "/car/" and "?load"
Thanks for your help !