120 lines
4.2 KiB
JavaScript
120 lines
4.2 KiB
JavaScript
|
/*
|
||
|
* Image scrolling JQuery code.
|
||
|
*
|
||
|
* Copyright (c) 2007 Jan Dittberner <jan@dittberner.info>
|
||
|
* Jan Dittberner IT-Consulting & -Solutions
|
||
|
* Cottbuser Str. 1, D-01129 Dresden
|
||
|
* All rights reserved.
|
||
|
*/
|
||
|
var imgprefix = "";
|
||
|
var imgfull = "";
|
||
|
var imgthumb = "";
|
||
|
|
||
|
function getPathParts(imagesrc) {
|
||
|
var filename = imagesrc.substring(imagesrc.lastIndexOf("/") + 1);
|
||
|
var pathstart =imagesrc.substring(0, imagesrc.lastIndexOf("/") + 1);
|
||
|
if (pathstart.indexOf(imgfull) ==
|
||
|
(pathstart.length - imgfull.length)) {
|
||
|
pathstart = pathstart.substring(0, pathstart.length - imgfull.length);
|
||
|
} else if (pathstart.indexOf(imgthumb) ==
|
||
|
(pathstart.length - imgthumb.length)) {
|
||
|
pathstart = pathstart.substring(0, pathstart.length - imgthumb.length);
|
||
|
}
|
||
|
var dirname = pathstart.split(imgprefix)[1];
|
||
|
var basename = dirname + filename
|
||
|
var retval = {
|
||
|
'filename' : filename,
|
||
|
'pathstart' : pathstart,
|
||
|
'dirname' : dirname,
|
||
|
'basename' : basename
|
||
|
};
|
||
|
return retval;
|
||
|
}
|
||
|
|
||
|
function updateContentImage(pathParts) {
|
||
|
var content_main = $("#content_main img").attr("src",
|
||
|
pathParts.pathstart + pathParts.filename);
|
||
|
$("#content_main a").attr("href", pathParts.pathstart +
|
||
|
imgfull + pathParts.filename);
|
||
|
$.getJSON("fetchdescription.php",
|
||
|
{"imagename" : pathParts.basename},
|
||
|
function(data, textStatus) {
|
||
|
$("#imagedescription").text(data["data"]);
|
||
|
});
|
||
|
}
|
||
|
|
||
|
$(document).ready(function() {
|
||
|
$("#arrleft").mouseover(function() {
|
||
|
$("#scrollable").animate({
|
||
|
left: "0px"
|
||
|
}, 5000);
|
||
|
}).mouseout(function() {
|
||
|
$("#scrollable").stop();
|
||
|
});
|
||
|
$("#arrright").mouseover(function() {
|
||
|
offset = parseInt($("#imgscroller").css("width")) -
|
||
|
parseInt($("#scrollable").css("width"));
|
||
|
$("#scrollable").animate({
|
||
|
left: offset + "px"
|
||
|
}, 18000);
|
||
|
}).mouseout(function() {
|
||
|
$("#scrollable").stop();
|
||
|
});
|
||
|
$("#backbtn").click(function() {
|
||
|
var parts = getPathParts($("img#contentimg").attr("src"));
|
||
|
var pred = null;
|
||
|
$("div.thumbnail img").each(function() {
|
||
|
if (pred == null) {
|
||
|
pred = getPathParts(this.src);
|
||
|
} else {
|
||
|
var thumbparts = getPathParts(this.src);
|
||
|
if (thumbparts.basename == parts.basename) {
|
||
|
updateContentImage(pred);
|
||
|
}
|
||
|
pred = thumbparts;
|
||
|
}
|
||
|
});
|
||
|
});
|
||
|
$("#fwdbtn").click(function() {
|
||
|
var parts = getPathParts($("img#contentimg").attr("src"));
|
||
|
var pred = null;
|
||
|
$("div.thumbnail img").each(function() {
|
||
|
var thumbparts = getPathParts(this.src);
|
||
|
if (thumbparts.basename == parts.basename) {
|
||
|
pred = thumbparts;
|
||
|
} else if (pred != null) {
|
||
|
updateContentImage(thumbparts);
|
||
|
pred = null;
|
||
|
}
|
||
|
});
|
||
|
});
|
||
|
$("div.thumbnail img").mouseover(function() {
|
||
|
updateContentImage(getPathParts(this.src));
|
||
|
});
|
||
|
$("a.lightbox").lightBox();
|
||
|
});
|
||
|
|
||
|
|
||
|
|
||
|
function MM_swapImgRestore() { //v3.0
|
||
|
var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
|
||
|
}
|
||
|
function MM_preloadImages() { //v3.0
|
||
|
var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
|
||
|
var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
|
||
|
if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
|
||
|
}
|
||
|
|
||
|
function MM_findObj(n, d) { //v4.01
|
||
|
var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
|
||
|
d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
|
||
|
if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
|
||
|
for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
|
||
|
if(!x && d.getElementById) x=d.getElementById(n); return x;
|
||
|
}
|
||
|
|
||
|
function MM_swapImage() { //v3.0
|
||
|
var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
|
||
|
if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
|
||
|
}
|