1

次の Fiddle ( http://jsfiddle.net/3UWk2/1/ ) をモバイル (具体的には iPhone Safari) で複製しようとしていますが、JavaScript が正しく実行されていないようです。何か提案はありますか? ありがとう!!

js は次のとおりです。

<script>
$(document).ready(function() {
    $('#00Ni0000007XPVF').bind('change', function() {
        var elements = $('div.container_drop').children().hide(); // hide all the elements
        var value = $(this).val();

        if (value.length) { // if somethings' selected
            elements.filter('.' + value).show(); // show the ones we want
        }
    }).trigger('change');
});
</script>
4

1 に答える 1

0

キャッシュされた値を使用しているようです。hide何も返しません。もう一度表示しようとすると失敗します。

var elements = $('div.container_drop').children().hide();

察するに

var elements = $('div.container_drop').children();
    elements.hide();

コード

$(document).ready(function() {
    $('#00Ni0000007XPVF').bind('change', function() {
        // cache the value
        var elements = $('div.container_drop').children(); 
            elements.hide();   // hide all the elements
        var value = $(this).val();

        if (value.length) { // if somethings' selected
            elements.filter('.' + value).show(); // show the ones we want
        }
    }).trigger('change');
});
于 2013-08-05T23:02:45.133 に答える