問題タブ [execcommand]
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 - execCommand を使用したクロスブラウザーの strong/em 挿入
contentEditable機能とexecCommandを使用すると、すべての WYSIWYG Web エディターで使用されるように、ページの特定の部分のコンテンツを編集/フォーマットできます。ただし、このような機能の実装には多数のブラウザーの矛盾があり、そのような Web エディターはそれらを手動で処理する必要があります。
私の場合、IE はBoldおよびItalicコマンドにstrong要素とem要素を使用します。これは、 b、i、および/またはスタイル付きスパンのビジュアル スタイルのものではなく、セマンティックな strongおよびemの後にあるので、まさに私が望むものです。 . ただし、他のブラウザーはこれらのビジュアル スタイル要素を使用しており、 strong要素またはem要素を設定する方法を提供していません。
すべてのブラウザでstrongとemを使用できるようにする方法はありますか? IEの結果に近い結果が得られる限り、そのようなことを処理するための新しいコマンドを追加してもかまいません。また、交差するインライン/ブロック要素に、ブラウザーを壊すことなく (または少なくとも同じように壊すことなく) 適用できるとよいでしょう。はい、他のエディタもいくつか使用できますが、この機能だけに興味があります。助けていただければ幸いです。
ありがとうございました
javascript - livequery キー押下イベント
( before()
jquery の関数を使用して、新しい<p>
要素を div レイヤーに追加しています。
ここでは、タグkeypress
を挿入する関数を設定しています。<br>
これは、append 関数が呼び出されて新しい<p>
ものが追加されるまでは正常に機能します (br タグの挿入)。livequery でkeypressイベントをアンバインドして再度バインドするにはどうすればよいですか?
編集:<p>
タグにはcontentEditableプロパティがあります。<br>
タグがdivでラップされており、タグのみが必要<br>
なため、これを行っています
opera - オペラでexeccommandが機能しない
私はこのコード、BOLD の execcommand を持っていますが、opera では動作しません。誰かが理由を知っていますか?ありがとう
ボディオンロードで開始関数を呼び出します。Firefox と IE では問題ありませんが、Opera では動作しません。オペラの execcommand のいくつかの制限について知っている人はいますか? ありがとう
javascript - 任意のテキストに execCommand でスタイルを適用する
選択したテキストで実行する方法は知っていますが、 divexecCommand
内の他のテキストで実行する方法はありますか?contenteditable
jquery - TinyMCEカスタムリンクボタン/コマンド(jQueryを使用)
デフォルトのツールバーが非表示になっているTinyMCEエディターがあり、それを置き換えるために独自のエディターを作成しました(office2007スタイルのcssプレビューで簡略化されています)。
コードを介したリンクの作成に問題があります(cmsによって生成されたページのリストを含む独自のjQuery UIウィンドウをロードします。これにより、コードへのURLが返されます)。
私のやり方は次のとおりです。
TinyMCEセットアップ構成に以下を追加します。
したがって、実行されるコマンドはすべて、デフォルトの動作を実行する前にその関数を実行します。
その関数で、「mceLink」イベントかどうかを確認します(カスタムツールバーがコマンドを正しく送信するようになったので、問題はありません)。取得すると、ユーザーが選択したURLを返すウィンドウが表示されます。この時点で問題が発生します。
を使用して選択したノードを取得します
しかし、予想どおり、段落のノードを返します。
私がする必要があるのは、選択範囲を<a>
タグでラップして、そのノードを使用できるようにすること<a>
ですが、これを行う方法を見つけることができません。APIを確認しましたが、探しているものが見つかりません。TinyMCEはそれを内部で使用する必要があるため、何かがあるはずです。(私もTinyMCEソースを調べてみましたが、それは私を超えています!)
誰かアイデアがありますか?
ありがとう
c# - execCommand( "Print"、false、IDon'tUnderstandThisArgument)
私がやろうとしているのは、ダイアログボックスを表示せずに横向きモードでこれを印刷することです。これは私がこれまでに持っているものです:
横向きモードで印刷するための命令は、3番目の引数を介して送信する必要があることは知っていますが、これを行うために3番目の引数を作成する方法がわかりません。この最後の議論を私の目標を達成させる方法について誰かが私に助けを与えることができますか?
javascript - execCommand('undo') が実行可能かどうかを判断する方法はありますか? [ジャバスクリプト]
execCommand('undo') を実行できるかどうかを判断しようとしています。
私はこれを試しました:
それは機能します...しかし、スクリプトの他の部分でいくつかの問題が発生します。
「元に戻す」が実行可能かどうかを確認する別の方法はありますか?
前もって感謝します!
javascript - TinyMCE-カスタムリンクボタン-「リンクの追加」は問題ありませんが、「リンクの編集」とリンク属性へのアクセスに関するドキュメントが見つかりません
TinyMCEにカスタムボタンを追加しました。これにより、特注のリンクピッカーが表示されます。ユーザーがテキストを選択してボタンをクリックすると、ダイアログが表示され、選択に使用execCommand('insertHTML', false, "<a href... etc">)
しているURLを選択すると表示されます。
これは正常に機能します-リンクがすでに作成されていて、ユーザーがそれを編集したい場合は、リンクボタンをもう一度クリックします(カーソルが通常どおりリンクされたテキスト内にある場合)が、状況は次のとおりです-私はしませんすでに作成されたリンクとその属性にアクセスして、ダイアログを再度ロードしてデータを入力する方法がわかりません。
TinyMCEサイト、Stack、Google全般を検索してください。簡単な答えを期待している(そして少し恐ろしい)-しかしそうでなければ、複雑な答えでいいでしょう!!
誰かが答えを知っているか、私にそれを指摘することができれば、私は非常に感謝しています。よろしくお願いします、ロブ
編集-必要性を説明するための私のコードのビット
TinyMCE initの場合:
上記で呼び出される関数:
javascript - div だけに execcommand を設定する
ドキュメント全体ではなくdiv要素を使用してexeccommandをバインドする方法があります。これを試します:
しかし、エラーがあります:
ドキュメント全体ではなくdiv要素だけでexeccommandをバインドする方法があります!! iframe メソッドを使用するのは好きではありません。
javascript - window.getSelection return html
この関数は、Web ページから選択されたテキストを返します。選択した領域のhtmlを返す方法。<img>
と<a>
タグでこれを行うことは可能ですか?
関数のリストは次のとおりです:
https://developer.mozilla.org/Special:Tags?tag=DOM&language=en