-6

我知道已经有很多关于它的问题,但我没有找到我的答案。

我在jsFiddle上的代码有效,但是当我想在我的网站上使用它时,它不起作用:s 而且我看不出问题出在哪里(不是编码,js 也加载在正文中。 ..)

两种情况:

1:没有 $(document).ready

在任何情况下都没有发生任何事情。

2:没有 $(document).ready

当您点击“Et c'est reparti !” 例如,第一个条件已完成,但如果您再次单击,则不会发生任何事情,而第二个条件应该被激活:(

的JavaScript:

function afficherToggle(c){
    if($(c).height()!='20'){
        $(c).stop().animate({ height: '20px',}, 600 );
    }
    else{
        $(c).animateAuto("height", 800); 
    }
}

jQuery.fn.animateAuto = function (prop, speed, callback) {
    var elem, height, width;
    return this.each(function (i, el) {
        el = jQuery(el), elem = el.clone().css({
            'height': 'auto'
        }).appendTo('body');
        height = elem.css('height'),
        elem.remove();

        if (prop === 'height') el.animate({
            "height": height
        }, speed, callback);
    });
}

感谢您的帮助 !

Ps : 对不起我的英语,如果有什么不清楚的地方,我会尝试用其他语言解释。

4

2 回答 2

4

您没有在脚本末尾关闭$(document).readyadd 。});

于 2013-03-19T15:15:42.437 回答
0

看萤火虫。ReferenceError: afficherToggle 未定义。你的网站上可能需要 jQuery UI 1.9.2 库吗

于 2013-03-19T15:17:45.880 回答