他们是如何在主题中完成此功能的,你点击uri更改的固定链接(眼球)按钮,没有哈希(#)如何完成?是ajax吗?或其他什么。
我认为它正在调用页面但没有重新加载?
主题:http://thingslog-theme.tumblr.com/ (点击每个帖子底部的眼球)
我很难过并帮忙?
答案 0 :(得分:2)
他们使用这种代码:
$('a').click(function() {
link = $(this).attr('href')
history.pushState({}, '', link);
$('#content').load('/content.php?url='+link)
return false;
})
使用history pushstate function,允许您添加和修改浏览器历史记录条目。
答案 1 :(得分:0)
我们使用Backbone + HTML5 pushState来处理没有哈希的URI更改。这是有效的,因为我们遵循Tumblr如何构建所有博客的URL。
我们使用jQuery.load来处理获取html并将其加载到页面中。
该代码看起来有点像这样:
$container.load('http://blog.tumblr.com/post/123 #container', function() {
var $post = that.$('.overlay-container .post');
that.view = new App.PostViewFactory.createView($post);
that.view.on('close', function() {
window.history.back();
});
});
希望有所帮助。