我最近发现了这个关于如何使用 History.js、jQuery 和 ScrollTo 使用 HTML5 History API 对网站进行 Ajaxify 的要点:https ://github.com/browserstate/ajaxify
我很难获得这个工作的简单版本,并且不确定我是否理解所有内容。首先,我加载了 gist 中提供的所有脚本,然后设置了一个非常简单的导航和内容部分:
<ul id="nav">
<li id="home-link"><a href="/" title="Home">Home</a>/</li>
<li id="work-link"><a href="/work" title="Work">Work</a>/</li>
<li id="labs-link"><a href="/labs" title="Labs">Labs</a>/</li>
<li id="blog-link"><a href="/blog" title="Blog">Blog</a>/</li>
<li id="contact-link"><a href="/contact" title="Contact">Contact</a></li>
</ul>
<div id="content"></div>
接下来,我更改了选择器变量以匹配 html:
/* Application Specific Variables */
contentSelector = '#content',
$content = $(contentSelector),
contentNode = $content.get(0),
$menu = $('#nav'),
activeClass = 'active',
activeSelector = '.active',
menuChildrenSelector = 'li',
我接下来应该做的是我迷路的地方。我要做的就是加载特定于所选导航链接的 html 内容。因此,如果我单击“工作”,我想将一个 work.html 文件加载到内容部分并将 URL 更改为“mywebsite.com/work”。为了简单起见,让我们说 work.html 和所有其他 ajaxable 内容都位于同一目录中。
任何帮助是极大的赞赏!干杯!