如何解决单击事件时带有内容加载器 div 的 JavaScript 哈希 URL
我已经在 javascript 中创建了哈希加载 URL 函数,一切都很完美,预期一个问题,那就是 - 我想要,如果我点击 URL <div class="loader"</div>
将附加。这基本上是一个代表加载内容的加载器吗?
我已经在使用此代码 $("body > div.content").append('<div class="loader"</div>');
,但此加载程序仅在我重新加载页面时才起作用。
我希望当我点击 <a href="#page">CLICK HERE</a>
类型时,点击我也会显示加载程序。
我如何实现目标并修复我的代码。 请帮帮我
function loadcontent(hash) {
if (hash == "") {
hash = "./home.html";
}
$("html body").animate({
scrollTop: 0
},"600","swing");
$("body > div.content").load("directory/" + 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 = "./home.html";
}
$("body > div.content").append('<div class="loader"</div>');
$("div.content > div").load("directory/" + hash,function(responseTxt,statusTxt,jqXHR) {
if (statusTxt == "success") {
$("div.loader").remove(); return true;
} 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="#page" onclick="loadcontent(hash)">CLICK HERE</a>
如果您不想重定向,您可能必须在 loadcontent()
中返回 false。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。