2012-01-29 14 views
0

最も単純な私は、JS/jqueryの内、最も簡単なWYSIWYGを書いた:完璧http://jsfiddle.net/XnSWF/WYSIWYGは再び、IEはexecCommand

作品(例えば太字または選択したテキストに太字セットに書き込むように設定してください。)newsetオペラ11の上に、クロム16、Firefoxの9とSafari 5.1でもIE9では太字にすることはできません。太字ボタンを使うと、最初の文字に最初の行に移動します。

なぜですか?

答えて

1

IEでclickイベントが発生する前に選択が破棄されたためです。代わりにmousedownイベントを使用して、またはボタンのテキストが選択不可にすることにより(良い)で、このラウンドを取得することができます:

$('<li class="wysiwyg-bold"><b unselectable="on">textBold</b></li>') 
    .appendTo('.wysiwyg-toolbar'); 

ライブデモ:http://jsfiddle.net/XnSWF/1/

+0

ビッグありがとう!選択できない属性でうまく動作しますが、この属性を削除してみると、「クリック」すると「mousedown」で置き換えられ、太字で書かれていない選択されたテキストのみで動作します。なぜですか? (http://jsfiddle.net/XnSWF/3/) – kicaj

+0

@kicaj:それでも選択を失うので、最初は太字で表示されます。 –

+0

おかげさまで再びありがとうございました! – kicaj