var Pic = new Array(); // picture file name var PicW = new Array(); // picture width var PicH = new Array(); // picture height var PicC = new Array(); // picture comment var preLoad = new Array(); Pic[0] = 'photos/20090726_treetoptrail/IMG_5384.JPG'; PicW[0] = 480; PicH[0] = 640; PicC[0] = '  '; preLoad[0] = new Image(); Pic[1] = 'photos/20090726_treetoptrail/IMG_5385.JPG'; PicW[1] = 640; PicH[1] = 480; PicC[1] = '  '; preLoad[1] = new Image(); Pic[2] = 'photos/20090726_treetoptrail/IMG_5386.JPG'; PicW[2] = 480; PicH[2] = 640; PicC[2] = '  '; preLoad[2] = new Image(); Pic[3] = 'photos/20090726_treetoptrail/IMG_5388.JPG'; PicW[3] = 640; PicH[3] = 480; PicC[3] = '  '; preLoad[3] = new Image(); Pic[4] = 'photos/20090726_treetoptrail/IMG_5390.JPG'; PicW[4] = 480; PicH[4] = 640; PicC[4] = '  '; preLoad[4] = new Image(); Pic[5] = 'photos/20090726_treetoptrail/IMG_5391.JPG'; PicW[5] = 480; PicH[5] = 640; PicC[5] = '  '; preLoad[5] = new Image(); Pic[6] = 'photos/20090726_treetoptrail/IMG_5392.JPG'; PicW[6] = 640; PicH[6] = 480; PicC[6] = '  '; preLoad[6] = new Image(); Pic[7] = 'photos/20090726_treetoptrail/IMG_5393.JPG'; PicW[7] = 640; PicH[7] = 480; PicC[7] = '  '; preLoad[7] = new Image(); Pic[8] = 'photos/20090726_treetoptrail/IMG_5394.JPG'; PicW[8] = 480; PicH[8] = 640; PicC[8] = '  '; preLoad[8] = new Image(); Pic[9] = 'photos/20090726_treetoptrail/IMG_5395.JPG'; PicW[9] = 480; PicH[9] = 640; PicC[9] = '  '; preLoad[9] = new Image(); Pic[10] = 'photos/20090726_treetoptrail/IMG_5396.JPG'; PicW[10] = 640; PicH[10] = 480; PicC[10] = '  '; preLoad[10] = new Image(); Pic[11] = 'photos/20090726_treetoptrail/IMG_5397.JPG'; PicW[11] = 640; PicH[11] = 480; PicC[11] = '  '; preLoad[11] = new Image(); Pic[12] = 'photos/20090726_treetoptrail/IMG_5398.JPG'; PicW[12] = 640; PicH[12] = 480; PicC[12] = '  '; preLoad[12] = new Image(); Pic[13] = 'photos/20090726_treetoptrail/IMG_5399.JPG'; PicW[13] = 640; PicH[13] = 480; PicC[13] = '  '; preLoad[13] = new Image(); Pic[14] = 'photos/20090726_treetoptrail/IMG_5400.JPG'; PicW[14] = 640; PicH[14] = 480; PicC[14] = '  '; preLoad[14] = new Image(); Pic[15] = 'photos/20090726_treetoptrail/IMG_5402.JPG'; PicW[15] = 480; PicH[15] = 640; PicC[15] = '  '; preLoad[15] = new Image(); Pic[16] = 'photos/20090726_treetoptrail/IMG_5403.JPG'; PicW[16] = 640; PicH[16] = 480; PicC[16] = '  '; preLoad[16] = new Image(); Pic[17] = 'photos/20090726_treetoptrail/IMG_5407.JPG'; PicW[17] = 640; PicH[17] = 480; PicC[17] = '  '; preLoad[17] = new Image(); Pic[18] = 'photos/20090726_treetoptrail/IMG_5408.JPG'; PicW[18] = 640; PicH[18] = 480; PicC[18] = '  '; preLoad[18] = new Image(); Pic[19] = 'photos/20090726_treetoptrail/IMG_5409.JPG'; PicW[19] = 640; PicH[19] = 480; PicC[19] = '  '; preLoad[19] = new Image(); Pic[20] = 'photos/20090726_treetoptrail/IMG_5410.JPG'; PicW[20] = 640; PicH[20] = 480; PicC[20] = '  '; preLoad[20] = new Image(); Pic[21] = 'photos/20090726_treetoptrail/IMG_5411.JPG'; PicW[21] = 640; PicH[21] = 480; PicC[21] = '  '; preLoad[21] = new Image(); Pic[22] = 'photos/20090726_treetoptrail/IMG_5412.JPG'; PicW[22] = 640; PicH[22] = 480; PicC[22] = '  '; preLoad[22] = new Image(); Pic[23] = 'photos/20090726_treetoptrail/IMG_5414.JPG'; PicW[23] = 640; PicH[23] = 480; PicC[23] = '  '; preLoad[23] = new Image(); Pic[24] = 'photos/20090726_treetoptrail/IMG_5415.JPG'; PicW[24] = 480; PicH[24] = 640; PicC[24] = '  '; preLoad[24] = new Image(); Pic[25] = 'photos/20090726_treetoptrail/IMG_5416.JPG'; PicW[25] = 640; PicH[25] = 480; PicC[25] = '  '; preLoad[25] = new Image(); Pic[26] = 'photos/20090726_treetoptrail/IMG_5417.JPG'; PicW[26] = 640; PicH[26] = 480; PicC[26] = '  '; preLoad[26] = new Image(); Pic[27] = 'photos/20090726_treetoptrail/IMG_5418.JPG'; PicW[27] = 640; PicH[27] = 480; PicC[27] = '  '; preLoad[27] = new Image(); Pic[28] = 'photos/20090726_treetoptrail/IMG_5419.JPG'; PicW[28] = 640; PicH[28] = 480; PicC[28] = '  '; preLoad[28] = new Image(); Pic[29] = 'photos/20090726_treetoptrail/IMG_5420.JPG'; PicW[29] = 640; PicH[29] = 480; PicC[29] = '  '; preLoad[29] = new Image(); Pic[30] = 'photos/20090726_treetoptrail/IMG_5421.JPG'; PicW[30] = 640; PicH[30] = 480; PicC[30] = '  '; preLoad[30] = new Image(); Pic[31] = 'photos/20090726_treetoptrail/IMG_5422.JPG'; PicW[31] = 480; PicH[31] = 640; PicC[31] = '  '; preLoad[31] = new Image(); Pic[32] = 'photos/20090726_treetoptrail/IMG_5423.JPG'; PicW[32] = 640; PicH[32] = 480; PicC[32] = '  '; preLoad[32] = new Image(); Pic[33] = 'photos/20090726_treetoptrail/IMG_5424.JPG'; PicW[33] = 480; PicH[33] = 640; PicC[33] = '  '; preLoad[33] = new Image(); Pic[34] = 'photos/20090726_treetoptrail/IMG_5425.JPG'; PicW[34] = 480; PicH[34] = 640; PicC[34] = '  '; preLoad[34] = new Image(); Pic[35] = 'photos/20090726_treetoptrail/IMG_5426.JPG'; PicW[35] = 480; PicH[35] = 640; PicC[35] = '  '; preLoad[35] = new Image(); Pic[36] = 'photos/20090726_treetoptrail/IMG_5427.JPG'; PicW[36] = 640; PicH[36] = 480; PicC[36] = '  '; preLoad[36] = new Image(); Pic[37] = 'photos/20090726_treetoptrail/IMG_5428.JPG'; PicW[37] = 640; PicH[37] = 480; PicC[37] = '  '; preLoad[37] = new Image(); Pic[38] = 'photos/20090726_treetoptrail/IMG_5429.JPG'; PicW[38] = 640; PicH[38] = 480; PicC[38] = '  '; preLoad[38] = new Image(); Pic[39] = 'photos/20090726_treetoptrail/IMG_5433.JPG'; PicW[39] = 640; PicH[39] = 480; PicC[39] = '  '; preLoad[39] = new Image(); Pic[40] = 'photos/20090726_treetoptrail/IMG_5434.JPG'; PicW[40] = 640; PicH[40] = 480; PicC[40] = '  '; preLoad[40] = new Image(); Pic[41] = 'photos/20090726_treetoptrail/IMG_5435.JPG'; PicW[41] = 640; PicH[41] = 480; PicC[41] = '  '; preLoad[41] = new Image(); Pic[42] = 'photos/20090726_treetoptrail/IMG_5436.JPG'; PicW[42] = 640; PicH[42] = 480; PicC[42] = '  '; preLoad[42] = new Image(); Pic[43] = 'photos/20090726_treetoptrail/IMG_5439.JPG'; PicW[43] = 480; PicH[43] = 640; PicC[43] = '  '; preLoad[43] = new Image(); Pic[44] = 'photos/20090726_treetoptrail/IMG_5440.JPG'; PicW[44] = 480; PicH[44] = 640; PicC[44] = '  '; preLoad[44] = new Image(); Pic[45] = 'photos/20090726_treetoptrail/IMG_5441.JPG'; PicW[45] = 640; PicH[45] = 480; PicC[45] = '  '; preLoad[45] = new Image(); Pic[46] = 'photos/20090726_treetoptrail/IMG_5442.JPG'; PicW[46] = 640; PicH[46] = 480; PicC[46] = '  '; preLoad[46] = new Image(); // alert("111 preLoadPic ix = "+0+":::"+preLoad[0].name); // Set slideShowSpeed (milliseconds) var slideShowSpeed = 5000 // Agent sniffer shamelessly 'stolen' from the excellent X library from cross-browser.com var xOp7=false,xOp5or6=false,xIE4Up=false,xNN4=false,xUA=navigator.userAgent.toLowerCase(); if(window.opera){ xOp7=(xUA.indexOf('opera 7')!=-1 || xUA.indexOf('opera/7')!=-1); if (!xOp7) xOp5or6=(xUA.indexOf('opera 5')!=-1 || xUA.indexOf('opera/5')!=-1 || xUA.indexOf('opera 6')!=-1 || xUA.indexOf('opera/6')!=-1); } else if(document.layers) xNN4=true; else {xIE4Up=document.all && xUA.indexOf('msie')!=-1 && parseInt(navigator.appVersion)>=4;} // Duration of crossfade (seconds) var crossFadeDuration = 1 // Specify the image files var t = -1; var pos = 0; var posNext = 0; var status_slideshow = 0; var count_entry = 0; var html; function preLoadPic(index) { if (index >= 0 && index < Pic.length) { if (preLoad[index].src == "") { preLoad[index].src = "albums/"+Pic[index]; // alert("preLoadPic ix = "+index); // alert("preLoadPic"); } } else { Alert("Error : invalid index."); } } function startSlideShow() { if (Pic.length == 0) { // No picture to start slide show. Alert("Error : Pic.length is less than or equal to 0."); } else if (t == -1) { // Only when the slide show has not been started, // then start it. posNext = pos; if ((posNext+1) < Pic.length) { // Can increment var pos. Thus increment. posNext++; } else if ((posNext +1) >= Pic.length) { // Cannot increment var pos. Thus restart from beginning. posNext = 0; } status_slideshow = 1; count_entry = 0; playSlideShow(); window.status='Starting Slide Show ... '+window.status; } } function playSlideShow() { if (Pic.length <= 0) { endSlideShow(); Alert("Error : Pic.length is less than or equal to 0."); return; } if (preLoad[posNext].src == "") { endSlideShow(); Alert("Error : preLoad[posNext].src is empty"); return; } if (! preLoad[posNext].complete) { // The next picture is not completely loaded. if (count_entry == 3) { // Already attempted 3 times. Abort. endSlideShow(); window.status='Slide show halted. Connection speed is too slow.'; Alert("Error : Connection speed is too slow for slide show."); } else { window.status='Loading Picture '+(posNext+1)+' of '+Pic.length+', '+Pic[posNext]; if (count_entry > 0) { window.status = window.status + ', '+count_entry; } if (t == -1) { t = window.setInterval('playSlideShow();', 3000); // alert("timer started"); } } count_entry++; } else { // The next picture has been completely loaded. // Show the next picture pos = posNext; count_entry = 0; changeSlide(); window.status='Showing Picture '+(pos+1)+' of '+Pic.length; if (status_slideshow != 0 && (posNext+1) < Pic.length) { // Slide show is being played. // Preload the next picture. posNext++; preLoadPic(posNext); if (t == -1) { // Although it is now in the slide show mode, but // the timer has not been started. Thus, start it. t = window.setInterval('playSlideShow();', 3000); } } else { // Slide show is not being played OR slide show has ended. if (status_slideshow != 0) { window.status=window.status+', '+'Slide Show Ended.'; } endSlideShow(); } if (status_slideshow == 0) { // Not in slide show mode. // Also preload the next and the prev photo if ((pos+1) < Pic.length) preLoadPic(pos+1); if (pos > 0) preLoadPic(pos-1); } } } function endSlideShow() { if (t != -1) { window.clearInterval(t); t = -1; } // window.status=''; status_slideshow = 0; } function changeSlide() { if (xIE4Up) { if (document.all) { //document.images.SlideShow.style.filter= "blendTrans(duration=crossFadeDuration)" document.all.SlideShow.style.filter="blendTrans(duration=1)"; document.all.SlideShow.filters.blendTrans.Apply(); } } writeInnerHTML(); if (xIE4Up) { if (document.all) { document.all.SlideShow.filters.blendTrans.Play(); } } displayComment(); return true; } function writeInnerHTML() { html = ""; html += "\n"; html += "\n"; html += "
\n"; html += " 0) { posNext = pos - 1; playSlideShow(); } } function firstPhoto() { endSlideShow(); posNext = 0; playSlideShow(); } function lastPhoto() { endSlideShow(); if (Pic.length > 0) { posNext = Pic.length - 1; playSlideShow(); } } function gotoPhoto(num) { endSlideShow(); if (num > 0 && num <= Pic.length) { pos = num - 1; if (preLoad[pos].src == "" || ! preLoad[pos].complete) { // The next picture is not completely loaded. preLoadPic(pos); writeInnerHTML(); displayComment(); } else { changeSlide(); } // Also preload the next and the prev photo if ((pos+1) < Pic.length) preLoadPic(pos+1); if (pos > 0) preLoadPic(pos-1); } } function displayComment() { html = "Album 44 : 2009 July 26, Tree Top Trail
"; html += "Photo "+(pos+1)+" of "+Pic.length+"
"; html += PicC[pos]; html += "
"; document.getElementById("TitleAndComments").innerHTML = html; } function load() { displayComment(); // Display the first picture. gotoPhoto(1); // Preload the last picture. if (Pic.length>0) preLoadPic(Pic.length-1); }