我怎么能让jQuery直接转到?

我想让jQuery直接导航(没有动画需要)到我传入变量的id。

我有各种标记,如id="content"id="edit"id="..." ,它们是

标题。 使用PHP进行validation我将输出一个变量,如var NAVIGATE_TO = ,我想将网站移动到该id位置。

就像我做domain.tld/page#edit#content但使用jQuery一样,因为当我加载页面时,我的PHP框架不允许我指示哈希。

您可以将location.hash设置为您需要浏览器滚动到的id

 window.location.hash = '#edit'; 

根据我的经验, window.location.hash解决方案只能工作一次。 如果您不想使用该插件,可以试试这个:

 var navigationFn = { goToSection: function(id) { $('html, body').animate({ scrollTop: $(id).offset().top }, 0); } } 

然后像这样调用它(其中someID是你想要滚动到的元素的ID):

 navigationFn.goToSection('#someID'); 

使用此function,您还可以改变动画速度(我将其设置为0)以便它是即时的,但您可以将值传递给函数,以便代码可以重复使用。

使用jquery scrollto插件然后就可以这样做

 $(document).ready(function(){ $(".topMenu").click(function() { $.scrollTo($("#edit"), { duration: 0}); });