0

我想将菜单的样式切换器放在我的网站上,但它在 Chrome / IE / Safari 上不起作用(在 FireFox 上运行良好)。这是一些代码:

    // Menu Style Switcher
    $("#option-1").click(function(){
        $("#navigation").removeClass("style-2");
    });

    $("#option-2").click(function(){
        $("#navigation").addClass("style-2");
    });


<div class="menu-style">
    <select>
        <option id="option-1">Style 1</option>
        <option id="option-2">Style 2</option>
    </select>
</div>
4

2 回答 2

5

addClassName不存在。函数的正确名称是addClass


另一个改进是使用元素的change事件而不是选项上的..selectclick

// Menu Style Switcher
$('.menu-style select').change(function(){
    if (this.value === 'Style 1'){
        $("#navigation").removeClass("style-2");
    } else {
        $("#navigation").addClass("style-2");
    }
});
于 2012-12-30T00:52:50.770 回答
1

您应该收听change整个<select>元素的事件。

标记

<select id="yourSelect">
    <option value="1">1</option>
    <option value="2">2</option>
</select>

JS

$('#yourSelect').change(function(e){

    if( $(this).val() == 1){

        $("#navigation").removeClass("style-2");        

    }else{

        $("#navigation").addClass("style-2");        

    }
}

见小提琴

于 2012-12-30T00:52:24.287 回答