Przewijanie do tyłu działa. Poniżej cały kod js.
CODE
function preventDefaultAction(e) {
if (e) {
if (typeof e.preventDefault != 'undefined') {
e.preventDefault();
}
else {
e.returnValue = false;
}
}
return false;
}
function new_proj_id(which) {
current = $("#projects div.current").attr("id");
var num = current.substring(current.lastIndexOf('_') + 1, current.length);
ile = 2;
if(which == 'next')
num = num + ile;
else
num = num - ile;
var new_id = 'project_' + num;
return new_id;
}
function get_last_project_id() {
return $("#projects div.last").attr("id");
}
function set_current(id) {
$("#projects .current").removeClass('current');
$('#' + id).addClass('current');
}
function next_project(e) {
if($('#projects div.current').hasClass('last')) {
to_project('project_1', 1200);
}
else {
var new_id = new_proj_id('next');
to_project(new_id, 600);
}
return preventDefaultAction(e);
}
function previous_project(e) {
if($('#projects div.current').hasClass('first')) {
var last_id = get_last_project_id()
to_project(last_id, 1200);
}
else {
var new_id = new_proj_id('previous');
to_project(new_id, 600);
}
return preventDefaultAction(e);
}
function to_project(new_id, speed) {
if(speed) {
$("#projects").animate({
left: 70-$('#' + new_id).position().left
}, speed);
set_current(new_id);
}
else {
$("#projects").animate({
left: 370-$('#' + new_id).position().left
}, 600);
set_current(new_id);
}
}
function init() {
jQuery.easing.def = "easeOutQuint";
$("#next_project_btn").click(next_project);
$("#previous_project_btn").click(previous_project);
}
$(document).ready(function(){
init();
});
Style css dla warstw (warstwy mają szerokość 1024px):
CODE
#project_1 {left: 70px;}
#project_3 {left: 1094px;}
#project_5 {left: 2118px;}
#project_7 {left: 3142px;}
#project_9 {left: 4166px;}
#project_11 {left: 5190px;}
#project_13 {left: 6214px;}
#project_15 {left: 7238px;}
#project_17 {left: 8262px;}
#project_19 {left: 9286px;}
#project_21 {left: 10310px;}
#project_23 {left: 11334px;}
#project_25 {left: 12358px;}
#project_27 {left: 13382px;}
#project_29 {left: 14406px;}
Jak chce przesunąć w prawo
function next_project(e) to dostaje błąd:
$("#" + new_id).position() is undefined
to_project("project_12", 600)action.js (wiersz 60)
next_project(Object originalEvent=Event click which=1 view=window)action.js (wiersz 40)
e()jquery-1...6.pack.js (wiersz 11)
e()jquery-1...6.pack.js (wiersz 11)
[Break on this error] left: 70-$('#' + new_id).position().left