테스트 사이트 - 개발 중인 베타 버전입니다

텍스트 필드 css 적용하기..

요즘 Focus된 필드는 색깔을 표시하고 Blur될때 다시 원상복귀되는 형태의
폼들이 많이 나오고 잇네요.. 머 네이버도 부분적으로 사용하고 있는거 같고..
소스는 간단합니당. ^^;;
<style type='text/css'>
.din{border:1px solid #FF0000;}
.dout{border:1px solid #000000;}
</style>

<form name='aaa'>
<input type=text name='' onfocus='input_focus(this);' class='dout'>
<input type=text name='' onfocus='input_focus(this);' class='dout'>
</form>

<script language='javascript'>
function input_focus(obj){
 $(obj).addClass('din')
  .removeClass('dout')
  .blur(function(){
  $(this).addClass('dout')
   .removeClass('din');
 });
}
</script>

onfocus 이벤트를 주어서 직접 컨트롤 하는 방법과
아래의 경우처럼 클래스 셀렉터를 이용해 전체적으로 컨트롤 하는 방법이 있습니다.
<input type=text name='' class='dout'>
<input type=text name='' class='dout'>

<script language='javascript'>
$(".dout").focus(function(){
 $(this).addClass('din')
  .removeClass('dout')
  .blur(function(){
   $(this).addClass('dout')
    .removeClass('din');
  });
});
</script>
뭐 장단점이 있겠지만 저는 아래걸 쓰고싶네요.. html코딩도 줄어들고..

좀 이거 아이러니 한게 제가 못 찾아서 그런지는 모르겠지만..
addClass와 removeClass를 같이 써야 한다는게 참 거시기 하네요..
단일지정 함수는 없는걸까요??
javascript의 className 요녀석을 써도 괜찮을거 같은데..


[이 게시물은 관리자님에 의해 2011-10-31 16:55:28 jQuery에서 이동 됨]

댓글 작성

댓글을 작성하시려면 로그인이 필요합니다.

로그인하기

댓글 4개

좋은 팁 감사드립니다.

아랫부분은 속성을 바꿔주는 것으로 될 겁니다.

$(this).addClass('din').removeClass('dout')
->
$(this).attr("class","din");
좋은팁 감사합니다.
단간하게 :focus 속성으로도 가능합니다. ex) input:focus { border:1px solid #888; }
오늘 한참찾았는데.. 드디어 찾았네요.
잘쓰겠습니다~

게시글 목록

번호 제목
28080
7612
7598
7595
19842
28079
19840
7593
28076
7590
28072
28065
19836
7586
28058
7573
31754
7552
28057
30993
28052
7546
7544
7538
7519
30992
19834
7517
7512
7511
19832
19820
7509
24658
7508
7507
19818
30990
7506
7505
7498
7492
28051
7481
30988
19813
19812
7477
7476
7471
7467
19810
7464
19809
7463
7457
30980
7450
28043
7447
7440
28040
7438
7430
7427
7423
7414
7408
7405
7401
7400
19808
7398
7393
7389
19805
7382
7379
7378
7363
7361
7356
19804
7355
7352
19786
7342
7336
7332
19783
7328
7325
7324
28036
19782
7321
26574
7314
7312
19781