2011-05-12 71 views
0

我遇到了麻烦scrollTop到我工作的一个搜索页面上工作。这里是我的代码:jQuery的scrollTop的麻烦

if(window.location.href.indexOf("Search") > -1) { 
$("html, body").animate({scrollTop: $("#ditto_results").offset().top}, 2500); 
}); 

我需要查询的网址字符串“搜索”,看看搜索已经完成,如果是这样,滚动页面到#ditto_results div。当我执行搜索时,虽然没有任何反应。

如果我有一个click事件代替在第一行,它工作正常。我究竟做错了什么?谢谢你的帮助!

+0

可能不是问题,但的indexOf()是大小写敏感的方法,因此您的实际搜索搜索? – 2011-05-12 18:37:48

+0

不,它是资本 – Vecta 2011-05-12 18:41:51

回答

1

你可能会立即执行这些代码无论它的定位在文档中...你应该使用文档准备事件而不是后文件已准备就绪,以便所有的元素都加载,这将立即执行(不一定是他们的内容即图像)包括你#ditto_resultsdiv元素:

$(function(){ 
    if(window.location.href.indexOf("Search") > -1) { 
     $("html, body").animate({scrollTop: $("#ditto_results").offset().top}, 2500); 
    }); 
}); 
+0

谢谢您的答复。我添加了文档准备好的事件,但它仍然不像它应该的那样。 – Vecta 2011-05-12 18:40:40

+0

你尝试使用Firebug调试它,看看那个特定的div是否存在在执行的时间? – 2011-05-12 18:44:31