問題タブ [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.

0 投票する
2 に答える
380 参照

javascript - IE8 および querySelectorAll() で HTML の開始タグのみを含む要素を返す問題

<main class="page-content"></main>Web ページがIE8 のタグのコンテンツをレンダリングしていません。私はbackbone.jsフレームワークを使用しており、ページに要素を追加するビューがあります。私もhtml5shivを使用しています。

最初の要素は find だけを追加します (ナビゲーション バーとそのすべての要素)。.page-contentただし、要素を追加しようとすると、IE8 はエラーをスローします。jQuery の find メソッドの不一致が原因であることがわかりました。IE8 のみで.find('.page-content')、タグを含む DOM で を実行すると、メソッドは.outerHTMLプロパティが に設定された要素を返します<MAIN class=page-content>。終了タグ (およびすべての内部要素) が欠落していることに注意してください。これは IE8 でのみ発生し (>IE8 はまだテストしていません)、発生すると、appendChild()jQuery のappend()メソッド内でメソッドが失敗します。

jQuery の find メソッドをさらに掘り下げたところ、問題の原因は jQuery が Web API メソッドを使用する場合にあることがわかりましたquerySelectorAll()。jQuery のコードでは、開発者は次のようにコメントしています。

とはいえ、これが何を意味するのかはよくわかりません…。

この問題を示すために、jsFiddle の例を作成しました: http://jsfiddle.net/VHL7Q/6/

IE8 で jsFiddle リンクを開くと、アラートが表示されます。

または、Chrome または Firefox で jsFiddle リンクを開くと、アラートが表示されます。

DOM ツリーをトラバースするための独自の find メソッドを修正する以外に、この問題の解決方法がわかりません。

注: 効果があると思われる「応急処置」タイプの解決策は、<main></main>タグをタグに置き換えることでした<div></div>。ただし、このソリューションを永続的に使用することはできません。<main></main>タグの使用方法を見つける手助けが必要です。

0 投票する
1 に答える
117 参照

javascript - W3C セレクター API は jquery セレクターを実装します $('a span:contains("myText")')

変わりたい

とは ???入力する必要がありますか?

0 投票する
2 に答える
2256 参照

jquery-selectors - アンカー タグの innerHTML にアクセスする

メニュー バーのタイトルとして使用する必要がある innerHTML にアクセスできません。詳細については、添付の画像を参照してください...

タイトル「AMRIS」は、javascript 変数に文字列として格納する必要があるものです。

後で次のコードを使用して、Bootstrap メニューに取得したタイトルを入力します。

右クリック > 新しいタブで画像を開くとフルサイズで表示されます

ここに画像の説明を入力

0 投票する
2 に答える
61 参照

jquery - html ファイルに querySelectorAll を書き込めません

同じクラス名を持つ div の総数を書き込めません。それを実行しようとすると、[object NodeList] が出力されます。div クラスの量を取得してドキュメントに印刷するにはどうすればよいですか? どうもありがとう、コードは次のとおりです。

<script> var elementos = document.querySelectorAll('#container .foo') document.write(elementos); </script>

0 投票する
0 に答える
373 参照

javascript - getElementsByClassName/querySelectorAll の結果に対する要素アクセス

getElementsByClassName/querySelectorAll 関数で要素にアクセスしようとしていますが、結果から要素を取得しようとするとどうなるかわかりません。

この 2 つの関数の戻り値は配列ではなく nodeList であると読みましたが、item 関数を使用しても機能しません。

セル 1 とセル 2 は、22 個の要素を持つリストである正しいことを示していますが、array/nodeList メソッドでそれらにアクセスすることはできません。

要素はd3.jsで作成しましたが、間違いを言わなければ骨の折れるHTML DOM要素を作成することになっています。では、なぜうまくいかないのでしょうか。