我有一个基于underscores.me主题的简单主题。我需要使用ajax加载此网站的所有内部页面,而无需重新加载页面。 我还需要在新标签页中打开外部链接。
有一些插件可以执行此操作,但是我如何编写自己的jquery命令?
到目前为止,我的代码一直是听:
<script>
jQuery(document).ready(function($) {
var mainContent = $("#content");
var siteUrl = "http://" + top.location.host.toString();
var url = '';
var url_of_page = "";
$(document).delegate("a", "click", function() {
location.hash = this.pathname;
return false;
});
$("#searchform").submit(function(e) {
location.hash = '?s=' + $("#s").val();
e.preventDefault();
});
$(window).bind('hashchange', function(){
url = window.location.hash.substring(1);
url_of_page = url;
if (!url) {
return;
}
url = url + " #content";
var head_of_page = "";
var q = $.ajax({
url : url_of_page,
type : "GET"
});
q.fail(function(){
console.log('failed');;
});
q.done(function(response){
head_of_page = jQuery(response).find('head').html();
$('head').html(head_of_page);
mainContent.html($("#content" , response));
});
});
$(window).trigger('hashchange');
});
</script>
事实上,我希望以此为移动设备创建渐进式主题。重新加载页面不是用户友好的,所以我想使用ajax加载页面。