一个页面的网站hashbang导航滚动
One Page website hashbang navigation scrolling
我计划为我的单页网站做SEO优化。我有一个困难的事情要做,这是滚动功能与hashbang工作。当我从导航中点击url时,有平滑的滚动到该页上的部分。
<ul class="navigation" id="menu">
<li>
<a href="#personal-profile">Personal Details</a>
</li>
<li>
<a href="#work-experience">Experience</a>
</li>
<li>
<a href="#education">Education</a>
</li>
<li>
<a href="#skills">Skills</a>
</li>
<li>
<a href="#contact">Contact</a>
</li>
</ul>
这个函数用于平滑滚动:
function handleSmoothScrolling() {
$('a[href*=#]:not([href=#])').click(function() {
if (location.pathname.replace(/^'//,'') == this.pathname.replace(/^'//,'') && location.hostname == this.hostname) {
var target = $(this.hash);
target = target.length ? target : $('[name=' + this.hash.slice(1) +']');
console.log(target.offset());
if (target.length) {
$('html,body').animate({
scrollTop: target.offset().top
}, 500);
return false;
}
}
});
}
当我使用默认url时一切正常,但当我更改
时<a href="#work-experience">Experience</a> to <a href="#!work-experience">Experience</a>
并将section的id改为id="! "
你应该使用。htaccess或者你的服务器来处理#!到#,或者更好的是,假设你正在使用AngularJS,启用html5模式。
相关文章:
- Angular JS IE9 Hashbang url rewriting
- 如何识别我的网站中的慢速设备
- 用Javascript更改我网站上的字体大小
- 有任何可能将facebook实时信使整合到一个网站中
- 将电视直播频道从网站嵌入我的网站
- Windows 8固定的网站互动程序
- 门户网站:当地时间有多有用
- 正在删除node.js中已验证的网站
- 为什么在这个网站上不能通过JS访问元素
- 需要使用谷歌应用程序脚本列出谷歌域下的所有网站
- 为什么只有工厂在棱角分明的网站上被提及
- 从应用程序脚本检查谷歌网站访问权限
- 使用谷歌网站翻译器自动翻译网页
- 使用node.js制作网站
- 谷歌如何确定网站加载时间
- 带有url的单页网站导航
- Ajaxify Wordpress网站与社交插件
- 你应该在AJAX内容网站上使用hashbang,还是只使用普通的URL
- 为hashbang URL验证noscript网站内容
- 一个页面的网站hashbang导航滚动