Jquery attr() 后的触发函数不起作用
Jquery triggering function after attr() does not work
我想要实现的是,如果有人点击菜单中指定的 link,它会重定向到主页,然后滚动到特定内容。
我的 Jquery 代码很简单:
$(document).ready(function () {
$("#upbar li:nth-of-type(2)").click(function(){
$(location).attr('href', 'index.html');
$('html,body').animate({
scrollTop: $("#samples").offset().top}, 700);
});
});
它重定向到 index.html 页面但不滚动 :/
提前致谢!
马丁
假设 location
在您的示例中针对 window.location
以更改浏览器 URL...
更改浏览器的 location
将加载新页面并丢弃 运行ning jQuery/JavaScript。 $('html,body').animate(
永远不会 运行 在预期的新页面上。
- 为什么不直接使用指向目标页面的书签锚点?
例如
$(location).attr('href', 'index.html#samples');
或更好只是:
location.href = "index.html#samples";
或者您可以使用 Ajax 加载页面,因此您的代码保持常驻状态
或者向新页面传递一些东西来告诉它滚动到哪里
我想要实现的是,如果有人点击菜单中指定的 link,它会重定向到主页,然后滚动到特定内容。
我的 Jquery 代码很简单:
$(document).ready(function () {
$("#upbar li:nth-of-type(2)").click(function(){
$(location).attr('href', 'index.html');
$('html,body').animate({
scrollTop: $("#samples").offset().top}, 700);
});
});
它重定向到 index.html 页面但不滚动 :/
提前致谢!
马丁
假设 location
在您的示例中针对 window.location
以更改浏览器 URL...
更改浏览器的 location
将加载新页面并丢弃 运行ning jQuery/JavaScript。 $('html,body').animate(
永远不会 运行 在预期的新页面上。
- 为什么不直接使用指向目标页面的书签锚点?
例如
$(location).attr('href', 'index.html#samples');
或更好只是:
location.href = "index.html#samples";
或者您可以使用 Ajax 加载页面,因此您的代码保持常驻状态
或者向新页面传递一些东西来告诉它滚动到哪里