上一个和下一个箭头不会循环
Prev and next arrow wont loop
我在文件夹PROJECTS中有10个html页面,除了上一个和下一个箭头外,一切都很好。问题是,如果你从我的Projects文件夹中导航到exp.projectPage_10.html的最后一页,而我希望下一页是projectPage_1.html,我会得到空白页。。。同样的事情是,如果我在projectPage_1.html上使用prev-btn导航,并且我希望下一个页面是projectPage_10.html……你可以猜到我得到的是空白页面。有什么建议我应该改变吗?泰!!
这就是我从Projects文件夹加载内容的方式:
function portfolioInit() {
var newHash = "",
$mainContent = $("#portfolio-ajax"),
$pageWrap = $("#portfolio-wrap"),
root = '#!projects/',
rootLength = root.length,
url;
$portfolioItems.find("a").click(function() {
window.location.hash = $(this).attr("href");
return false;
});
$(window).bind('hashchange', function(){
newHash = window.location.hash;
url = newHash.replace(/[#'!]/g, '' );
if (newHash.substr(0,rootLength) == root) {
if($pageWrap.is(':hidden')){
$pageWrap.slideDown('3000', function(){});
}
这是导航:
if(statusText == "error"){
$mainContent.html('<div class="row pad-top pad-bottom"><div class="col-md-12 pad-top pad-bottom"><div class="alert-message error"><p>The Content cannot be loaded.</p></div></div></div>');
$pageWrap.find('#preloader').remove();
}
closeProject();
nextProject();
prevProject();
});
$("#portfolio-items article").removeClass("current");
$("#portfolio-items a[href='" + newHash + "']").parent().addClass("current");
var projectIndex = $('#portfolio-items').find('article.current').index();
var projectLength = $('#portfolio-items article').length -1;
if(projectIndex == projectLength){
jQuery('#next-project').addClass('disabled');
jQuery('#prev-project').removeClass('disabled');
}else if(projectIndex == 0){
jQuery('#prev-project').addClass('disabled');
jQuery('#next-project').removeClass('disabled');
}else{
jQuery('#prev-project, #next-project').removeClass('disabled');
}
}
else if(newHash == '')
{
$('#portfolio-wrap').fadeOut('100', function() {
$('.single-portfolio').remove();
});
}
});
$(window).trigger('hashchange');
}
function closeProject() {
$('#close-project').on('click', function() {
$('#portfolio-wrap').fadeOut('100', function() {
$('.single-portfolio').remove();
});
history.pushState('', document.title, window.location.pathname);
window.location.hash = '#_';
return false;
});
}
function nextProject() {
$("#next-project").on("click", function() {
$('.single-portfolio').remove();
window.location.hash = $("#portfolio-items .current").next().find('a').attr("href");
return false;
});
}
function prevProject() {
$("#prev-project").on("click", function() {
$('.single-portfolio').remove();
window.location.hash = $("#portfolio-items .current").prev().find('a').attr("href");
return false;
});
}
尝试使用变量来存储当前项目索引。
projectIndex = 0;
function nextProject() {
$("#next-project").on("click", function() {
$('.single-portfolio').remove();
if(projectIndex == $("#portfolio-items .current").get().length - 1) projectIndex = 0;
else projectIndex++;
window.location.hash = $("#portfolio-items .current").get(projectIndex).find('a').attr("href");
return false;
});
}
function prevProject() {
$("#prev-project").on("click", function() {
$('.single-portfolio').remove();
if(projectIndex == 0) projectIndex = $("#portfolio-items .current").get().length - 1;
else projectIndex--;
window.location.hash = $("#portfolio-items .current").get(projectIndex).find('a').attr("href");
return false;
});
}
相关文章:
- 每第n个图像具有下一个循环的余数偏移
- 在每个循环上完成异步调用,然后转到下一个节点 js
- Jquery下一个和上一个按钮循环函数
- 将i from循环与下一个值进行比较
- 如何使用上一个/下一个功能循环数组中的图像
- 上一个和下一个箭头不会循环
- jQuery 循环 如果只有一张幻灯片,则隐藏上一个/下一个导航
- 循环遍历 Angular HTTP 请求中的对象,等到响应后再运行下一个循环
- 如何使用上一个/下一个按钮循环浏览图像
- 在循环中使用 q promise 的最佳方法是什么?等待链完成,然后再迭代到下一个
- 添加上一页下一个导航到列表项淡入/淡出循环
- 尝试创建一个简单的 JavaScript 库,其中包含下一个和上一个按钮以循环回开头
- JavaScript循环等待一些函数返回,然后执行下一个循环
- Jquery - 在每个循环中查找下一个元素
- "下一个“;按钮并没有按预期循环浏览答案
- 在元素之间循环,然后将类更改为下一个类
- settimeout正在阻塞事件循环Nodejs检查下一个示例:
- 在jQuery中,有一种方法可以在数组上循环,这样在循环到下一个循环之前,它首先等待来自服务器的响应
- 使用Titanium,我想在点击下一个按钮后,通过1乘1的数组循环,并使用上一个按钮向后循环
- AJAX-等待数据追加,然后循环下一个