2016-09-23 18 views
2

私はtextareaを持っており、選択したテキストの色を変更したいと思います。 例:テキストエリアの選択テキストの色を変更するには?

var text = "abcdefg"; 

私が選択したテキストefgの色を変更したいです。

​​
+0

は色のスタイルを持っていることはできません。しかし、 ':: selection' CSSセレクタを使うことができます。 http://www.w3schools.com/cssref/sel_selection.aspを参照してください。 – Mohammad

+0

textNodesにスタイルを使用できないため、選択したテキストをHTMLでラップする必要があります。 – evolutionxbox

+0

なぜ 'pure JS'と' jQuery'を混ぜたのですか? –

答えて

0

あなたはあなただけのnon-input objectsのためにそれを変更することができ、textareaためselection colorを変更することはできません。

は、ここに私のコードです。

たぶん、あなたは、テキストの一部を選択するがselecedさtextarea

3

使用::selection CSSセレクタの代わりにcontenteditableを試してみてください。選択した要素のテキストにCSSプロパティを追加できます。あなたが唯一の要素とテキストにスタイルを追加することができます

var textarea = document.querySelector("textarea"); 
 
textarea.selectionStart = 12; 
 
textarea.selectionEnd = 23;
::-moz-selection { 
 
    color: red; 
 
} 
 
::selection { 
 
    color: red; 
 
}
<textarea>My textarea highlighted text</textarea>

+0

テキストに追加される色は、オプションがユーザーに属するものです。それは適切ではないようなCSSを設定してください。 – user2956672

+0

@ user2956672あなたの仕事のための別の解決策はありません。しかし、色が限られている場合は、テキストクラスに色のクラスを追加してください。 https://jsfiddle.net/j62p92fa/を参照してください。 – Mohammad

関連する問題