2011-12-23 6 views
4

私はHTMLのテーブルを持って、- 別のセルが</p> <p>をクリックするまでjQueryの

を任意のセルがクリックされたとき、私は意志、考え、CSSを使用して、そのセルを強調表示したいです

$('td').click(function (event) { 
    //$(this).tabindex = 0; 
    //$(this).tabindex = 1; 
    $(this).focus(); 
}); 
:私のコードは以下のようになります。..フォーカス

が、その動作していないため

をそのセルのフォーカスと設定CSSを設定他のセルがクリックされたとき、私は、このクラスを削除する必要があるための

とCSSと思い

td:focus 
{ 
    background-color:Blue; 
} 

を次のように、私は

私の要件を達成するのを助けるしてください。.. tdにクラスを追加することはできません。

も。これを達成するための他の方法またはいずれかの回避策がある場合は私に知らせてください

答えて

9

試してみてください。

$('td').click(function (event) { 
     $('td').removeClass('focus'); //Remove focus from other TDs 
    $(this).addClass('focus'); 
}); 

そして

td.focus { 背景-青色; }

1

:focusがフォームのinputフィールドに使用されていますが、これは他の要素に適用することはできません。

JS:あなたはあなた自身のクラスを使用する必要があります

$('td').click(function (event) { 
    $('*').removeClass('focus'); 
    $(this).addClass('focus'); 
}); 

CSS:

td.focus { 
    background-color:Blue; 
} 

.focusクラスを持っているかもしれない何かを非フォーカスますtdを中心に、この方法では、上に置きます選択された要素。

あなたはまた、行うことができます:

1

$('*').click(function(event){ 
    $(this).removeClass('focus'); 
}); 
$('td').click(function (event) { 
    $(this).addClass('focus'); 
}); 

だから何をクリックすると、集中TD(::フォーカスが入力フィールドに取り組んでいますかどのようにアンカータグでアクティブな作品をどのように類似の挙動を)非焦点を当てますhttp://jsfiddle.net/eVS9f/5/

:あなたがそれらを維持したい場合は

はあなたがもう一度クリックするまで、あなたが

がここにフィドルの例を参照してください便利なtoggleClass機能を使用することができます「集中しました」

+0

他のセルがクリックされたときにこのクラスを削除する必要があります。 –

+0

jsfiddleの動作例でtoggleClassを表示して、クリックオン/クリックオフの代替あなたの答えはすでに投稿されている私のjsfiddleの例を完了したので、私はそれをトグルに変更し、このスレッドの詳細を追加するために投稿しました –

+0

Ok nice job then :) –

関連する問題