0

私は非常に単純な JS プロジェクトに取り組んでいます (クライアントの場合、これに jQuery を使用することはできません)。

したがって、基本的には次のようなボタンがいくつかあります。

button.onClick="document.execCommand('bold', false, null);";

イタリック体、下線など

問題は、それらが機能していないことです。タイマーでテストしたところ、動作するので、execCommand が動作することは確かです。そうでない理由は、それをクリックすると、 contentEditable=true div のテキストが選択解除されるためです。

これを回避する方法はありますか?

前もって感謝します。


boldBtn = document.createElement('a');
boldBtn.innerHTML = "make text bold";
    document.getElementById("toolbox").appendChild(boldBtn);

boldBtn.onClick="document.execCommand('bold', false, null);";
4

2 に答える 2

0

javasript を実行する場合は、関数である文字列ではなく、リスナーを実際の関数に設定します。

boldBtn.setAttribute("href", "#");
boldBtn.onClick = function()
{
    document.execCommand("bold", false, null); //or maybe exec bold(false); directly ?
    return false;
};
于 2012-12-17T18:21:49.783 に答える