Проблемы с Path.js для плагина jQuery back
Я решил использовать path.js в качестве моего плагина jQuery для функций возврата / перезагрузки, он почти запущен, но, похоже, не будет работать. Ссылка на плагин: https://github.com/mtrpcic/pathjs
Голова:
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="core.js"></script>
<script type="text/javascript" src="path.js"></script>
<script type="text/javascript" src="back.js"></script>
Навигация:
<div id="leftnav">
<p class="leftnavtext">
<a class="navlinks" id="about2" href="#/about">ABOUT</a> <br>
<a class="navlinks" id="process2" href="#/process">PROCESS</a> <br>
<a class="navlinks" id="materials2" href="#/materials">MATERIALS</a> <br>
<a class="navlinks" id="pricing2" href="#/pricing">PRICING</a>
</p>
AJAX Javascript код:
$(document).ready(function(){
$("#about2").click(function(){
$("#content").load("content.html #about");
});
$("#process2").click(function(){
$("#content").load("content.html #process");
});
$("#materials2").click(function(){
$("#content").load("content.html #materials");
});
$("#pricing2").click(function(){
$("#content").load("content.html #pricing");
});
$("#pricing3").click(function(){
$("#content").load("content.html #pricing");
});
$("#infinite1").click(function(){
$("#content").load("content.html #infinite");
});
});
Код Path.js (в заголовке back.js, плагин path.js.):
function notFound(){
$("#content .content").html("404 Not Found");
$("#content .content").addClass("Error");
}
function setPageBackground(){
$("#content .content").removeClass("Error");
}
Path.map("#/about").to(function(){
$("#content .content").html("About");
}).enter(setPageBackground);
Path.map("#/process").to(function(){
$("#content .content").html("Process");
}).enter(setPageBackground);
Path.map("#/materials").to(function(){
$("#content .content").html("Materials");
}).enter(setPageBackground);
Path.map("#/pricing").to(function(){
$("#content .content").html("Pricing");
}).enter(setPageBackground);
Path.root("#/about");
Path.rescue(notFound);
$(document).ready(function(){
Path.listen();
});
Кто-нибудь может увидеть, где я с этим не так?
1 ответ
Если вы пытаетесь перейти непосредственно к /#/materials
путем ввода URL-адреса в адресной строке браузера, по словам автора, PathJS в настоящее время не поддерживает это, так как он предназначен только для клиентской маршрутизации.
Я обошел это, в том числе Path.history.pushState({}, "", location.hash);
в моем сценарии загрузки.