为什么Object [ID]没有'Animate'方法?

时间:2012-03-18 21:01:45

标签: javascript jquery methods jquery-animate

我在这里创造了一个小提琴:http://jsfiddle.net/surfjam/zWWpz/

我无法弄清楚为什么animate在两个实例中工作,而在另一个实例中不工作。在控制台错误中说“......没有方法'Animate'......”

jQuery(document).ready(function($) {

    var effect = "inm-shine";

    $(".circle-button-border").mouseenter(function() {

        $(this).addClass(effect);

        $(this).stop(true, true).animate({
            opacity: '0.85'
        }, 'slow').css({
            'z-index': '100',
            top: '0',
            left: '0'
        });

//Error coming from this line...

        $(this).parents('div:eq(0)').attr('id').animate({
            height: '120%',
            left: '0',
            top: '0',
            width: '120%'
        }, 'fast');

    }).mouseleave(function() {
        $(this).animate({
            opacity: '0'
        }, 'fast');
    });
});​

SOLUTION:

感谢下面的建议,我已经重新设计了这样的问题:

var myId = $(this).parents('div:eq(0)').attr('id');
        $('#' + myId).animate({
            height: '110%',
            left: '0',
            top: '0',
            width: 110%
        }, 'fast');

感谢您的帮助!

1 个答案:

答案 0 :(得分:6)

attr('id')返回一个字符串,因此您不再拥有链接的jQuery对象。