問題タブ [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.
dom - DOM テキストノードの位置を取得する
テキスト ノードの幾何学的位置 (つまり、親要素、ページなどからの上/左オフセット) を取得することは可能ですか?
jquery - jQuery を使用してテーブル内のテキストを検索する
次のような行を持つテーブルがあります。
すべてのテキスト要素の jQuery でラップされたセットを作成して、セルに収まらない場合にそれらを切り捨てる関数に送信できるようにしたいと考えています。
ラップされたセットを取得する方法がわかりません。
これを試していましたが、うまくいきません:
jquery - jQueryを使用してテキストを含む要素を検索する
次のようなテキスト文字列を含むdiv内のすべてのhtml要素の配列を作成したい
文字列を取得したくないので、配列アイテムを要素にします(この例では、pノードになります)。文字列がどうなるかは前もってわからないので、一致する文字列値を探すことができません。また、空のテキストノードが配列に含まれることも望ましくありません。
ありがとう!
javascript - テキストノードの getBoundingClientRect() に相当するものはありますか?
テキスト ノードの境界矩形を取得する方法はありますか?
getBoundingClientRect() メソッドは要素のみで定義され、親要素は実際のテキスト ノードよりも大きくなります。
jquery - jQuery:textnodeを見つけていくつかの要素でラップします
私のHTMLコード:
本体内の「firebrand」を見つけて<span class="firebrand">firebrand</span>
、jQueryに置き換えたい
javascript - jQuery:コンテナのすべてのテキストノードにmouseupイベントをアタッチする
jQueryを使用するテキストノードを含む、コンテナのすべてのノードに「マウスアップ」イベントをアタッチしたいと思います。それ、どうやったら出来るの?
アップデート:
このようなHTMLフラグメントがある場合:
現在、$( "p *")は、イベントをに適用しますが、<p>
別々<strong>
に内の2つのテキストノードには適用しません<p>
。ソースを変更してクラスを追加することはできません。
javascript - すべてを削除せずにdiv内の個々のテキストノードを削除する方法は?
動的に作成された個々のテキスト ノードを削除するにはどうすればよいですか?
私はオンザフライで入力を生成しており、要素の前に説明テキストを配置するために .createTextNode を使用しています。作成中の特定の要素を削除する機能が必要で、.removeChild を使用して削除しています。参照するもの(ID /名前)があるため、個々の入力を削除するのに問題なく機能します。対応する入力コントロールと一緒に削除できるように、各テキスト ノードに何らかの参照を設定する方法はありますか?
javascript - JavaScript XML テキスト ノードに 4096 文字の制限はありますか?
有効な XML テキスト ノードの最初の 4096 文字しか取得できないのはどうしてですか? (JavaScriptを使用して...)テキストノードは制限されていますか?
events - mousedown および mouseup イベントがクリックと等しくない場合
:active 疑似クラスの相対的な位置と top: 1px を使用してクリックすると、押し下げ効果のあるボタンをしばらく使用しています。
クリック イベントが発生しないという問題がありましたが、同じ要素で mousedown イベントと mouseup イベントが発生しないことが原因であることが判明しました。最も内側の要素がボタン全体を覆うように少しいじりましたが、問題が残っていることがわかりました。
テキストの上部を右クリックすると、リンクが下にジャンプして (mousedown イベントが発生)、その後元に戻ります (mouseup イベントが発生します) が、クリックは発生しません。テキストの中央またはテキストから離れたところをクリックすると、すべて問題ありません。
ここで考えられる唯一のことは、textNode がカーソルの下にないため、mousedown イベントが textNode で発生し、mouseup イベントがアンカー要素で発生していることです。イベント オブジェクトをキャッチし、firebug を使用してターゲットを調べると、そうではないことがわかりますが、別の説明は思いつきません。少し読んでみると、Safari の textNodes で発生するイベントについての言及がいくつか見つかりますが、この不一致については何もありません。
次のスニペットを使用すると、問題を再現できます。テキストの上部、または 1 ~ 2 ピクセル上をクリックする必要があります。この問題は、1 行のピクセルでのみ発生します。
CSSをいじったり、インラインブロックを使用したり、パディングの代わりに行の高さを増やしたりしても、ここでは効果がないようです。私は多くの組み合わせを試しました。私のテストのほとんどは Firefox で行って、イベントにバインドし、firebug を介して何が起こっているかを記録できるようにしましたが、他のブラウザーでもこの問題が発生します。
アクティブジャンプを失うこと以外に、これについて提供できるインスピレーションを誰かが持っていますか? できればこの効果を維持したい。
本当にありがとう、
ドム(しゃれなし)
jquery - Dom ノードの操作、選択範囲をラップするタグを削除するにはどうすればよいですか?
私はあなたに私の「問題」を説明しようとします。テキストの一部を選択したときに、このテキストが html タグで「ラップ」されているかどうかを知りたいのですが、関数でそれらを削除します。
たとえば、次の文を使用します。
車は<strong>
緑</strong>
、船は黒
「緑」を選択してボタンをクリックすると、緑がラップされているかどうかを確認し<strong>
(それで問題ありません)、関数で<strong>
「緑」を含む削除せずにタグを削除します。
やろうとしましたが、子を削除して再作成すると、新しいノードが空になり、直接テキストを入れようとするとdocument.createTextNode
、新しいノードが表示されますが、<strong>
タグは残ります。
私は DOM 操作の専門家ではありません。これを解決するのを手伝ってもらえますか?
貴重なご支援をいただき、誠にありがとうございます。