0

此代码在除 Google Chrome 之外的所有浏览器中都能正常工作,有人知道为什么吗?

$(document).ready(function () {
    var $1 = $(".1"),
        $title = $(".admintitle"),
        $box = $(".uno"),
        flag = false,
        flag2 = false,
        height = $1.height();
    $title.click(function () {
        $1.animate({
            height: flag ? height : 40
        }, function () {
            $box.css('overflow', flag ? 'hidden' : 'visible')
            $title.css('background-position', flag ? '-254px 0px' : '0px 0px')
        });
        flag = !flag;
    });
});

http://jsfiddle.net/xQMHK/

4

2 回答 2

3

一种可能性是您使用数字作为类值。这不是严格禁止的,但它可能需要不同的选择策略:

var $1 = $(".1")

变成

var $1 = $('div[class~="1"]');
于 2013-10-01T16:46:37.807 回答
0

最终的代码和正确的是这个

http://jsfiddle.net/xQMHK/2/

$(document).ready(function () {
var $1 = $(".admin"),
    $title = $(".admintitle"),
    $box = $(".uno"),
    flag = false,
    flag2 = false,
    height = $1.height();
$title.click(function () {
    $1.animate({
        height: flag ? height : 40
    }, function () {
        $box.css('overflow', flag ? 'hidden': 'visible')
        $title.css('background-position', flag ? '-254px 0px': '0px 0px')
    });
    flag = !flag;
});
});

真的谢谢大家!

于 2013-10-01T16:56:52.780 回答