問題タブ [textnode]
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.
javascript - 動的に作成された要素が存在するかどうかを知る方法は?
私はこの単純な機能を持っています:
したがって、このメッセージが存在するかどうかを確認するためにIFを作成する必要があります [このメッセージが作成されている場合]。これが問題です、私はそれを行う方法がわかりません。
GetElementByIDは、動的に作成された要素では機能しないようです。
何か助けはありますか?ありがとう。
javascript - すべての選択HTMLテキストノードを取得するにはどうすればよいですか?
選択したテキストを取得するために使用し、実際に選択したwindow.getSelection
テキストを取得するために使用できますgetRangeAt
range
しかし、選択したすべてのテキストノードを取得するにはどうすればよいですか? のプロパティでは、とRange
しか取得できません。2 つのコンテナの外側のテキストはどうですか?startContainer
endContainer
やったような仕事をしたいのですがDiigo
、タグを使用してテキストを強調表示したいのですが、どうすればよいですか?
javascript - ドキュメントフラグメント内のすべてのテキストノードを取得するにはどうすればよいですか?
ユーザーが選択したテキストを取得します。
をコンテンツで取得するtextNode
にはどうすればよいですか?DocumentFragment
javascript - これはどのように「Uncaught NotFoundError: ノードが存在しないコンテキストでノードを参照しようとしました。」エラーですか?
TLDR:
完全な例については、http : //codepen.io/andrew-luhring/pen/Dknedを参照してください。
以下でコメントアウトされた行のコメントを外すと、「Uncaught NotFoundError: ノードが存在しないコンテキストでノードを参照しようとしました」というエラーが発生する理由がわかりません。
基本的に私がやろうとしているのは、dom に挿入されたテキストをテキスト ノードとして取り、それをフォーマットされたバージョンに置き換えることです。
html のスニペットは次のようになります。
jquery - テキストノードを返す
私はこのコード行を使用しています:
今のところ、これを console.log() に入れるだけです。テストにChromeを使用していますが、値は空の文字列として返されますが、値は「ミドルチャイルド」を返す必要があります。
これはHTMLです:
編集:私はjsfiddleを作成しようとしましたが、潜在的な洞察が得られました。フィドルでjQuery 1.6.4を選択しましたが、うまくいきました。私のサイトで実行している jQuery のバージョンは 1.6.2 です。それが私の問題の一部(すべてではないにしても)であるかどうか誰か知っていますか?
javascript - TextNode の途中のテキストを要素に置き換えます
TreeWalker を使用してテキスト ノード内に html タグを挿入したいのですが、TreeWalker によって html ブラケットが & lt; に強制的に挿入されます。& gt; 何を試しても。コードは次のとおりです。
' の代わりに \< または " を使用しても役に立ちません。私の回避策は、すべての DOM ツリーを文字列にコピーし、html 本体をそれで置き換えることです。これは非常に単純な Web ページで機能し、私の最初の問題を解決しますが、悪いハックであり、些細なページ以外では機能しません. 回避策を使用するのではなく、テキストノードで直接作業できるかどうか疑問に思っていました. (現在バグのある) 回避策のコードは次のとおりです:
編集:より良い回避策は、テキストノードにカスタムタグを付け((Customtag_Start_Here)など)、DOM全体を文字列にコピーし、カスタムタグを使用してテキストノードを識別し、そのように変更することです。でも、そうする必要がないなら、やめたほうがいい。