2013-03-26 8 views
0

은 웹 사이트의 jQuery와 함께 체크 박스 기능을 만들었습니다.이 기능은 Chrome, Firefox, Safari, Opera 등 다른 모든 브라우저에서 잘 작동합니다. 그러나 모든 버전에서는 작동하지 않습니다. 여기 내 코드는 다음과 같습니다.자바 스크립트가 Internet Explorer에서 작동하지 않습니다

<script src="http://code.jquery.com/jquery-1.9.1.js"></script> 

    <ul id="filters" style="list-style:none; margin-top:75px; line-height:30px; "> 

    <li> 

     <input type="checkbox" value="outdoor" id="outdoor" /> 

     <label for="filter-category">Outdoor</label> 

    </li> 

    <li> 

     <input type="checkbox" value="remote_monitor" id="remote_monitor" /> 

     <label for="filter-category">Remote Monitor</label> 

    </li> 


    <li> 

     <input type="checkbox" value="battery" id="battery" /> 

     <label for="filter-category">Battery Operated</label> 

    </li> 

</ul> 
<div style="width:850px; height:148px; clear:both; margin-top:80px;"> 

<div class="category outdoor " style=" float:left; ">Rocco</div> 

<div class="category remote_monitor camera" style="float:left;margin-top:-2px; margin-left:10px;">Borocco</div> 

<div class="category battery" style="float:left; margin-top:-2px;margin-left:10px;">Sylva</div> 

<div class="category battery outdoor " style="float:left; margin-top:-2px;margin-left:10px;">Novesto</div> 

<script> 
$('input').change (function() { 

     var selector = $('input:checkbox').map(function(){ 

      return this.checked ? '.' + this.id : ''; 


     }).get().join(''); 


     console.log(selector); 



     var all = $('div[class^="category"]'); 

     if(selector.length) 

      all.hide().filter(selector).show() 

     else all.hide(); 

    }); 
</script> 

누구든지 도와주세요!

+4

'console.log'라는 질문에 태그를 추가했습니다.이 질문과 관련 될 수 있습니까? http://stackoverflow.com/questions/7742781/why-javascript-only-works-after-opening -developer-tools-in-ie-once/7742862 # 7742862 – Spudley

+0

@ Spudley가 링크 한 것. IE는 dev 툴이 열려 있지 않으면'console'이 무엇인지 알지 못합니다. – Jack

+0

시도해 볼 수 있을까요? '(typeof console! == 'undefined') console.log (selector)' – Jashwant

답변

1

console.log()은 개발 도구 창이 열릴 때까지 IE에서 작동하지 않습니다.

적극적인 테스트를 거치지 않는 한 간단한 대답은 코드에 console.log()을 사용하지 않는 것입니다. 테스트 중이라면 개발자 도구가 열려서 코드가 작동합니다. 테스트를 거치지 않은 경우 console.log()을 제거하십시오. 아무 목적도 없습니다.

더 자세한 답변을

는 여기에서 찾을 수 있습니다 : Why does JavaScript only work after opening developer tools in IE once?

0

코드는 인터넷 익스플로러에서 잘 작동합니다. 나는 의견에서 이미 지적한 것처럼 - 당신은 인터넷 익스플로러에서 당신의 콘솔을 열지 않았다고 (f12) 믿습니다. 당신은 일을 CONSOLE.LOG 오픈 개발자 도구가 필요 - 또는 문제의

하나는 오류가 발생합니다 (그리고 자바 스크립트의 실행이 중지됩니다) :

console.log(selector); 

Your code

+0

절대적으로 맞습니다. 그것은 console.log 때문에 모든 것입니다, 그래서 방금 제거했습니다. IE에서 잘 작동합니다. 고맙습니다. – user2212033