所以我有这个我正在研究的ajax网站。我有它,所以它不会重新加载它
的相同页面
$('a.ajax-link').not('.active').not('.selected').not('.btn-disabled').on('click', function(e) {
if ($('#menu-overlay').hasClass("active")){
CloseAction();
setTimeout( function(){
$(".page-overlay").addClass("from-bottom");
$('#main').addClass('hidden');
} , 3000 );
}
else{
MenuOpen = "0";
$(".page-overlay").addClass("from-bottom");
$('#main').addClass('hidden');
}
});
//trigger smooth transition from the actual page to the new one
$('body').not('.active').not('.selected').not('.btn-disabled').on('click', '[data-type="page-transition"]', function(event){
if($(this).attr('target') || !AjaxLoad || $(this).attr('href') == '#'){
return true;
}
event.preventDefault();
var newPage = $(this).attr('href'),
oldPage = window.location.pathname.substr(window.location.pathname.lastIndexOf('/') + 1),
selectedPage = $(this).hasClass("selected");
if(newPage == oldPage){
return true;
}
if(selectedPage == true){
return true;
}
if ( MenuOpen == "1" ){
CloseAction();
setTimeout( function(){
// Load new page
if( !isAnimating ) changePage(newPage, true);
firstLoad = true;
} , 3000 );
}
else{
// Load new page
if( !isAnimating ) changePage(newPage, true);
firstLoad = true;
}
});
<li>
<a id="contact-trigger" class="ajax-link" href="contact.html" data-type="page-transition">
<i class="fa fa-envelope-square fa-2x"></i>
</a>
</li>
但是当你从'index'开始并前往'contact'时,按钮不能正常工作,它仍会重新加载页面并卡住,因为ajax不会让它通过因为它不是假设至。现在,如果我从“联系人”开始并再次单击联系人触发器,它将按预期工作。那么有什么不对,为什么它不能按照它来到特定页面的方式工作呢?
答案 0 :(得分:0)
使用提供的代码,如果您不希望页面在点击功能上刷新,则需要添加preventDefault()&amp; stopPropagation();
Object.getOwnPropertyDescriptor(x, "itemCount").get.call(this)