2013-12-23 4 views
0

나는이 주제에 대해 이미 많은 주제를 알고 있지만 유용한 것은 아직 찾지 못했다. div 표시 및 숨기기 jquery 코드가 있습니다. 크롬에서ff에서 Jquery가 작동하지 않는다

이 할 event.returnValue가되지 않습니다 '파이어 폭스에 내가 크롬 느릅 나무에 내 콘솔을 선택하지

입니다, 잘 말한다 노력하고 있습니다. 대신 표준 event.preventDefault()를 사용하십시오. '

하지만 event.returnValue가 없습니다. 또한 제안이 작동하지 않습니다 (에서는 event.preventDefault)

이것은 내 JS :

<script> 
$(document).ready(function(){ 
    $(".aanmelden_event").click(function(){ 
     event.preventDefault(); 
     $(".event_subscribe").toggleClass("uitgeklapt"); 
    }); 
}); 
</script> 

이 내 CSS입니다 :

.event_subscribe{ 
    height: 0px; 
    overflow:hidden; 
    transition: all 2s; 
    -webkit-transition: all 2s; /* Safari */ 
} 

그리고 여분의 클래스

:

.event_subscribe.uitgeklapt{ 
    height: 800px; 

} 

내 jquery에서 event.preventDefault를 사용하는 것으로 생각합니다. 나는 다른 주제로 e.preventdefault와 다른 제안 된 해결책을 시도했다. 불행히도 작동하지 않았습니다.

누군가 내가 여기서 잘못하고있는 것을 알고 있습니까? jquery-1.10.2.min.js btw를 사용합니다.

감사

+2

'이벤트'를 설정하지 않았습니다. 그럴 경우 문제가 발생할 수 있습니다 – putvande

+1

* ""event.returnValue가 사용되지 않습니다. 대신 표준 event.preventDefault()를 사용하십시오. "* 메시지, 문제와 관련이 없으며 jQuery 1.11에서 수정되었습니다. –

+0

클릭 기능에서 'function (event) (으)로 변경' –

답변

6

당신은 당신의 기능에 event 인수를 승인하지 않은 :

<script> 
$(document).ready(function(){ 
    $(".aanmelden_event").click(function(event){ 
    // Here -----------------------------^ 
     event.preventDefault(); 
     $(".event_subscribe").toggleClass("uitgeklapt"); 
    }); 
}); 
</script> 

따라서, event은 정의이며 클래스를 전환 할 수 있습니다 전에 코드가 발생합니다. 선언되지 않은 변수의 값을 읽으려고했기 때문에 콘솔 목록에 ReferenceError에 오류가 있었어야합니다.

다른 브라우저에서 작동하는 이유는 원래 세계에서 event 개 개체 (원래는 IE에 있었고 Chrome과 다른 일부는 IE 용으로 작성된 스크립트와 호환되도록 제공됨) 때문입니다. 파이어 폭스는 그렇게하지 않으며, 세계에는 event이 없다.

+0

'var'또는 함수 매개 변수를 통해 정의되지 않은 경우 이벤트의 기본값은 window.event – Bora

+1

@Bora : Firefox가 아니며 사양에 포함되지 않습니다. IE는 그 일을하고 Chrome은 원래 IE 용으로 작성된 코드와 호환 될 수 있습니다. –

+0

고맙습니다.이 솔루션은 실제로 함수 이후에 (이벤트)를 호출 한 것입니다 .그러나 내가 생각한 오류를주지 않았습니다. – Maartje

관련 문제