0

Web サイト用の jQuery を使用してチェックボックス機能を作成しました。この機能は、Chrome、Firefox、Safari、Opera などの他のすべてのブラウザーで正常に動作しています。ただし、IE のすべてのバージョンでは動作しません。これが私のコードです:

<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

2 に答える 2

1

console.log()Dev Tools ウィンドウが開かれるまで、IE では機能しません。

これに対する簡単な答えはconsole.log()、積極的にテストしていない限り、コードで使用しないでください。テストしている場合は、とにかく Dev Tools を開いているので、コードは機能します。テストしていない場合は、console.log();を削除します。それは何の役にも立ちません。

より詳細な回答は次のとおりです: JavaScript は、IE で開発者ツールを 1 回開いた後にのみ機能するのはなぜですか?

于 2013-03-26T15:11:29.110 に答える
0

コードは Internet Explorer で正常に動作します。コメントですでに指摘されているように、Internet Explorer でコンソールを開いていない (f12) と思います。console.logを機能させるには、開発者ツールを開いておく必要があります。そうしないと、エラーが発生します (そして、JavaScript の実行が停止します)。

問題の 1 つ:

console.log(selector);  

あなたのコード

于 2013-03-26T15:12:57.767 に答える