如何解决JavaScript 中带有 loader div 的哈希 URL
我已经通过 javascript 创建了哈希 URL 加载函数。我遇到了一个问题,即当我点击 href
标签时无法显示正在加载的 div。
我的代码运行良好,当我重新加载页面时它只将加载 div 显示为 <div class="loader"><div>
,但它在点击链接上不起作用。
请帮助我,我如何在点击哈希链接时实现该功能。
function loadcontent(hash) {
if (hash == "") {
hash = "./default-page.html";
}
$("html body").animate({
scrollTop: 0
},"600","swing");
$("div.main-content-inner").load("pagefolder/" + hash);
}
$(window).on("hashchange",function() {
loadcontent(location.hash.slice(1));
});
var url = window.location.href;
var hash = url.substring(url.indexOf("#") + 1);
if (hash === url) {
hash = "./default-page.html";
}
$("body").append('<div class="loader"><div>');
$("body> div").load("pages/mypage/" + hash,function(responseTxt,statusTxt,jqXHR) {
if (statusTxt == "success") {
$("div.loader").remove();
} else {
if (statusTxt == "error") {
$("div.loader").remove();
alert("Error : " + jqXHR.status + " " + jqXHR.statusText);
return false;
}
}
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<a href="#home">home</a>
<a href="#about">about</a>
<a href="#contactus">contact us</a>
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。