1

我是 jQuery 新手,但我已经对它的强大功能印象深刻。这是我的问题:

我想要

  • 添加class='dec'#jf1当我点击它时,如果它有class='undec'
  • 添加class='undec'#jf1当我点击它时,如果它有class='dec'

这就是我所拥有的 - 它不起作用!

<script>
$(document).ready(function(){
$(function() {

    $('#jf1').click(function() {

        if ('#jf1'.hasClass("undec")) {
            $('#jf1').toggleClass("undec dec");
    }
        else if ('#jf1'.hasClass("dec")) {
            $('#jf1').toggleClass("dec undec";
    }

    });

});
});
</script>
4

2 回答 2

6

您的代码中有几个语法错误,您的 if 语句应该是:

if ( $('#jf1').hasClass("undec") ) {

也是$(function(){})的简写版本$(document).ready(function(){}),你不应该嵌套它们。toggleClass删除和添加类,所以这里不需要使用if语句。

$(function() {
    $('#jf1').click(function() {
        // `this` refers to the clicked element
        $(this).toggleClass("undec dec");
    });
});
于 2013-02-26T08:10:58.743 回答
0

试试这个:http: //jsfiddle.net/YS5F5/

 $(document).ready(function () {
    $('#jf1').click(function () {
        alert("hello");
        $('#jf1').toggleClass("undec");
        $('#jf1').toggleClass("dec");

    });
});

在 jQuery(document).ready 部分之后不再需要该函数

于 2013-02-26T08:17:07.463 回答