5

CKEditorとjQueryUIのツールチッププラグインを使用しています。CKEditorがtitle属性をiframe要素に設定し、jQueryツールチッププラグインがそれをツールチップに変換し、エディターの任意の部分にマウスを合わせると(テキストを編集するたびに行う必要があります)、何が起こりますか。 、ツールチップには常に「リッチテキストエディタ、elementId」と表示されます。

ツールチッププラグインのセレクターを「*:not(iframe)」に設定しても、それは実行されます。iframeのツールチップを設定しないようにするためにこれまでに見つけた唯一の方法は、セレクターから「div」を除外することですが、エディターの太字/斜体などのオプションのツールチップも失われます。

また、CKEditorのJavascriptでiframeタイトルを設定するコードの部分が見つからないため、削除できます。私が見つけた1つの部分は、言語ファイル内の実際のタイトル文字列で、「リッチテキストエディタ」を空の文字列に置き換えることができますが、それでもiframeのタイトルは「、{elementId}」に設定されます。

助けていただければ幸いです。両方のプラグインを保持したいと思います。

4

5 に答える 5

9

まったく同じ問題にぶつかり、すぐにスクリーンリーダーが必要になる可能性が低い別の開発者向けにカスタムCMSを開発しました。

ポインタをありがとうmihaisimi。CKEditorインスタンスのプロパティを少し掘り下げて、コンテンツ領域から「リッチテキストエディター、element_id」のタイトルを削除するために、以下のJSビットを書くことになりました。

CKEDITOR.on("instanceReady", function(e) {
 var $frame = $(e.editor.container.$).find(".cke_wysiwyg_div");
 if($frame) $frame.attr("title", "");
});

したがって、基本的にCKEditorが読み込まれるとすぐに、CKEditorのコンテナをjQueryオブジェクトでラップし、.find()で実際のコンテンツdivを検索し、 .attr()タイトルを削除します。

このソリューションにはjQueryが必要であることに注意してください。CKEditorバージョン4.1.1を「divモード」で使用しています。'iframeモード'で同様のバージョンを使用している人は、おそらくに変更.find(".cke_wysiwyg_div")することで逃げることができ.find(".cke_wysiwyg_frame")ます。

たとえば、コードのビットをckeditor/config.jsファイルに追加できます。きれいではありませんが、機能します。

私の解決策がこの問題にぶつかる人を助けることを願っています。

于 2013-05-02T16:57:30.320 に答える
2

構成オプションを使用して、エディター領域のタイトル(ツールチップになります)を削除できます。

config.title = false;

http://docs.ckeditor.com/#!/api/CKEDITOR.config-cfg-titleを参照してください

于 2015-10-20T13:23:01.700 に答える
1

簡単なJavaScriptで簡単に設定できます。以下にサンプルがあります。私の場合、ck 4.0.1は、「webedit」で始まるIDを持つすべてのページdivにインラインで使用され、ツールチップは、comment属性に格納しているテキストに置き換えられます。

divは次のようになります。

<div id="webedit1" comment="My own tooltip">

作成されたインスタンスで、私のコードはタイトルをリセットし、それを私のコメントに置き換えます。

CKEDITOR.on( 'instanceReady', function( event ) {
        var editor = event.editor;
        var divElement = event.editor.element.$;

        if(divElement){
            var divComment = divElement.getAttribute("comment");
            if(divComment){
                divElement.title=divComment;
            }
        }
    });

良い一日を、ミハイ

于 2013-03-07T11:57:54.007 に答える
1

ツールチップオプションで次のように定義できます。

$( document ).tooltip({
    items: "input[title],p[title],span[title],td[title],img[title],a[title]",
});

期待されるiFrameが必要なすべてのタグに対して!

于 2014-04-09T14:02:25.617 に答える
0

ここでタイトルが設定されます。ご覧のとおり、これはスクリーンリーダーや一般的なa11yにとって非常に重要なことであるため、エディターはそれを変更する方法を提供しません。ただし、wysiwygareaプラグインのコードを変更して別のものにすることはできます。

于 2013-01-28T13:59:27.223 に答える