使用$ .get加载内容并将updadet元素向下滑动

时间:2012-03-02 16:33:39

标签: jquery jquery-ui jquery-animate slide jquery-get

我正在尝试使用jQuery.get将数据加载到元素中。 加载完成后,应使用该内容更新div,以便将内容滑动。

举个例子,请看一下这个小提琴:http://jsfiddle.net/7BKXq/1/ ..你可以找到以下内容:

function loadAndOpen(parent)
{
    var o_parent=$(parent);
    var url="jttp://myurl";
    o_parent.append('<div id="content">...loading...</div>');
     jQuery.get(url,function(data)
                        {
                        o_parent.find('#content')
                            .html(data)
                            .hide()
                            .slideDown('8000');
                        }
                    )   ;
}

问题是,slideDown在加载内容后显示元素,但不能平滑滑动。

.slideDown方法可能有错误用法?

谢谢!

1 个答案:

答案 0 :(得分:0)

我认为你的主要问题是slideDown时间周围的单引号,它使它成为字符串而不是整数。

我做了一些编辑,我仍然不喜欢你调用函数的方式,但老实说,我不能用jQuery事件观察器做它我想做的事情: http://jsfiddle.net/7BKXq/8/

function loadAndOpen(parent){
    var o_parent=$(parent);
    if(o_parent.children().length > 0) o_parent.children().remove();
    var url="http://api.geonames.org/postalCodeLookupJSON?postalcode=6600&country=AT&username=demo";
    o_parent.append('<div id="content">...loading...</div>');
     jQuery.get(url,function(data)
                        {
                        o_parent.find('#content')
                            .slideUp(100, function(){
                                $(this).html(data).slideDown(8000);
                            });
                        });
}