2016-11-03 1 views
0

jqueryで選択した行に色を付ける必要があります。私は、行にあるテキストエリアがあるとします。ユーザーがテキストエリアをクリックしたときにクリックされた行をtp colorにする必要があります。だから私はこのコードを使用しますテキストエリアのjqueryの色は1行だけです

$(document).on("mouseup", '#scroll_bar', function(eventData) { 
     console.log("DELLLLLLLLL"); 
     var scrollPosition = $(this).scrollTop() 
     var lineHeight = $(this).css("line-height"); 
     lineHeight = parseInt(lineHeight.substring(0, lineHeight.length - 2)); 

     var line = Math.floor((eventData.offsetY + scrollPosition)/lineHeight); 

     alert($(this).val().split("\n")[line]); 
    }); 

をしかし、私は、ユーザーがクリックしたが、私はオレンジのような色を選択していないどのように行を見つけます。誰でも私を助けることができますか?

+3

あなただけのテキストエリアのできない色の部分、それはオール・オア・ナッシングです。 – adeneo

+1

@adeneoあなたは正しいですが、テキストエリア全体をカバーしていない背景はどうでしょうか?背景画像や線形グラデーションを使用していますか?より創造的だと思ってください;-)(ダンバンハムの答えのように) –

+0

@RogierSpieker - それは実際にはすてきで、私からのアップヴォートですが、まだテキストエリアのラインを着色することはできませんが、同じ印象を与えるトリッキーです。 – adeneo

答えて

3

背景イメージでテキストエリアの1行(またはそれ以上)の行を色付けすることは可能です。

ここでは、リニアグラデーションで背景画像としてどのように行うことができるかの例があります。

background: linear-gradient(to bottom, #fff 0px, red 0px, red 22px, #fff 22px); 
background-position: 20px; 

Working example

関連する問題