2012-12-11 2 views
0

.on("click"의 구문을 이해하려고 노력하고 있지만 얻을 수 없습니다.jquery 함수에 대한 클릭 추가

이 코드가있는 경우 :

<script> 
    $(function() { 
     $(".somediv").not(":contains('$someparam')").addClass("hidden"); 
    }); 
</script> 

내가이 페이지에 링크로 $someparam를 표시하고,이 링크를 클릭하면 div의를 숨기려면이 jQuery를 활성화 위해 무엇을해야합니까?

미리 감사드립니다.

+1

정확히'$ someparam'이란 무엇입니까? – adeneo

+0

당신도 HTML을 게시해야합니다 –

+0

': contains' 선택자는 텍스트에만 적용됩니다. –

답변

0

나는이 질문을 이해하기 때문에 클릭 할 때 특정 $ someparam을 포함하는 somediv css 클래스에 숨겨진 CSS 클래스를 추가하는 것입니다.

당신이 바이올린에서 찾을 수 있습니다

여기
.somediv{ 
     width:100%; 
     height:20px; 
     margin:0 0 10px 0; 
     border-bottom:solid 1px red; 
     } 
    .hidden{ 
     display:none; 
     } 

내가 사용하는 html입니다 : 여기

http://jsfiddle.net/DwAAQ/

내가 사용하는 css입니다

우선은 내가 div의에 포함 'is'했다이 경우에는 variable which contains a specific string을 가지고,

$(function(){ 
     var $someparam = 'is'; 

     $(document).on('click', '.someclass', function() { 
      $(".somediv").not(":contains('" + $someparam + "')").addClass("hidden"); 
     }); 
    }); 

이 일을 무엇 :

<div class='somediv'>1 is</div> 
    <div class='somediv'>2 not</div> 
    <div class='somediv'>3 not</div> 
    <div class='somediv'>4 is</div> 

    <button class='someclass'>someClass</button> 

이는 jQuery i used with on click 핸들러입니다. 문서 준비가 완료되면 button here to click which executes the line in the jquery을 추가하여 .hidden css class

+0

놀랍게도 꽤 많은 토론이있었습니다. 귀하의 의견을 주셔서 감사 드리며 설명을 위해 특별히 감사드립니다. 제가 붙여 넣은 코드는 특정 div를 포함하지 않으면 div를 숨기기 위해 사용하는 jquery 매크로입니다. –

+0

도움이된다면 질문에 대한 대답으로 받아 들여 다른 사람들도 도움이된다는 것을 알 수 있습니다. – Jai

+0

나는 분명히 할 것이다, 나는 시험 과정에있다. –

0

기본적으로 .on은 완전히 다른 무언가에 사용됩니다.

.click(handler(eventObject)) 

그래서 특정 예는 다음과 같습니다 : 당신은 단지 click 마우스 이벤트가 필요
$('.someclass').click(function() { 
    $(".somediv").not(":contains('$someparam')").addClass("hidden"); 
}); 

(그건 그렇고, 당신은 '$ someparam'부분을 확인 할 수 있습니다 - 그것은 정말로 빗나간 쉼표로 쓰는 것이 합리적이지 않습니다).

+0

완전히 다른가요? 물론'.on'은 selector 매개 변수가 전달되면 이벤트 위임에 사용될 수 있지만'$(). click (handler) '는'$(). on ('click ', handler)'의 약자입니다. –

관련 문제