0
我使用html和javascript創建照片庫。幻燈片圖片在本地工作但在我的網站上不工作
當我在我的本地機器上測試代碼時,它工作正常,但是當我把它放到網站上時,它不起作用。
問題是微型照片出現,但我不能點擊它們就像空鏈接!
這是代碼(我用它從互聯網),這是鏈接到的代碼
http://www.dhtmlgoodies.com/index.html?whichScript=image_slideshow
<div id="dhtmlgoodies_slideshow">
<div id="previewPane">
<img src="images/gallerie/image111_max.jpg">
<span id="waitMessage">Loading image. Please wait</span>
<div id="largeImageCaption"></div>
</div>
<div align="center" id="galleryContainer">
<div id="arrow_left"><img src="images/gallerie/arrow_left.gif"></div>
<div id="arrow_right"><img src="images/gallerie/arrow_right.gif"></div>
<div id="theImages">
<!-- Thumbnails -->
<a href="#" onClick="showPreview('images/gallerie/image111_max.jpg','1');return false"><img src="images/gallerie/image111_min.jpg"></a>
<a href="#" onClick="showPreview('images/gallerie/image112_max.jpg','2');return false"><img src="images/gallerie/image112_min.jpg"></a>
<a href="#" onClick="showPreview('images/gallerie/image123_max.jpg','3');return false"><img src="images/gallerie/image123_min.jpg"></a>
<a href="#" onClick="showPreview('images/gallerie/image124_max.jpg','4');return false"><img src="images/gallerie/image124_min.jpg"></a>
<a href="#" onClick="showPreview('images/gallerie/image125_max.jpg','5');return false"><img src="images/gallerie/image125_min.jpg"></a>
<a href="#" onClick="showPreview('images/gallerie/image126_max.jpg','6');return false"><img src="images/gallerie/image126_min.jpg"></a>
<!-- Image captions -->
<div class="imageCaption">(1)</div>
<div class="imageCaption">(2)</div>
<div class="imageCaption">(3)</div>
<div class="imageCaption">(4)</div>
<div class="imageCaption">(5)</div>
<div class="imageCaption">(6)</div>
<div id="slideEnd"></div>
腳本
image_slidshow.js
var displayWaitMessage=true; // Display a please wait message while images are loading?
var activeImage = false;
var imageGalleryLeftPos = false;
var imageGalleryWidth = false;
var imageGalleryObj = false;
var maxGalleryXPos = false;
var slideSpeed = 0;
var imageGalleryCaptions = new Array();
function startSlide(e)
{
if(document.all)e = event;
var id = this.id;
this.getElementsByTagName('IMG')[0].src = 'images/gallerie/' + this.id + '_over.jpg';
if(this.id=='arrow_right'){
slideSpeedMultiply = Math.floor((e.clientX - this.offsetLeft)/5);
slideSpeed = -1*slideSpeedMultiply;
slideSpeed = Math.max(-10,slideSpeed);
}else{
slideSpeedMultiply = 10 - Math.floor((e.clientX - this.offsetLeft)/5);
slideSpeed = 1*slideSpeedMultiply;
slideSpeed = Math.min(10,slideSpeed);
if(slideSpeed<0)slideSpeed=10;
}
}
function releaseSlide()
{
var id = this.id;
this.getElementsByTagName('IMG')[0].src = 'images/gallerie/' + this.id + '.jpg';
slideSpeed=0;
}
function gallerySlide()
{
if(slideSpeed!=0){
var leftPos = imageGalleryObj.offsetLeft;
leftPos = leftPos/1 + slideSpeed;
if(leftPos>maxGalleryXPos){
leftPos = maxGalleryXPos;
slideSpeed = 0;
}
if(leftPos<minGalleryXPos){
leftPos = minGalleryXPos;
slideSpeed=0;
}
imageGalleryObj.style.left = leftPos + 'px';
}
setTimeout('gallerySlide()',20);
}
function showImage()
{
if(activeImage){
activeImage.style.filter = 'alpha(opacity=50)';
activeImage.style.opacity = 0.5;
}
this.style.filter = 'alpha(opacity=100)';
this.style.opacity = 1;
activeImage = this;
}
function initSlideShow()
{
document.getElementById('arrow_left').onmousemove = startSlide;
document.getElementById('arrow_left').onmouseout = releaseSlide;
document.getElementById('arrow_right').onmousemove = startSlide;
document.getElementById('arrow_right').onmouseout = releaseSlide;
imageGalleryObj = document.getElementById('theImages');
imageGalleryLeftPos = imageGalleryObj.offsetLeft;
var galleryContainer = document.getElementById('galleryContainer');
imageGalleryWidth = galleryContainer.offsetWidth - 80;
maxGalleryXPos = imageGalleryObj.offsetLeft;
minGalleryXPos = imageGalleryWidth - document.getElementById('slideEnd').offsetLeft;
if (navigator.userAgent.indexOf('MSIE') >= 0) {
var arrowWidth = document.getElementById('arrow_left').offsetWidth;
var el = document.createElement('div');
el.style.position = 'absolute';
el.style.left = arrowWidth + 'px';
el.style.width = (galleryContainer.offsetWidth - arrowWidth * 2) + 'px';
el.style.overflow = 'hidden';
el.style.height = '100%';
document.getElementById('galleryContainer').appendChild(el);
el.appendChild(document.getElementById('theImages'));
}
var slideshowImages = imageGalleryObj.getElementsByTagName('IMG');
for(var no=0;no<slideshowImages.length;no++){
slideshowImages[no].onmouseover = showImage;
}
var divs = imageGalleryObj.getElementsByTagName('DIV');
for(var no=0;no<divs.length;no++){
if(divs[no].className=='imageCaption')imageGalleryCaptions[imageGalleryCaptions.length] = divs[no].innerHTML;
}
gallerySlide();
}
function showPreview(imagePath,imageIndex){
var subImages = document.getElementById('previewPane').getElementsByTagName('IMG');
if(subImages.length==0){
var img = document.createElement('IMG');
document.getElementById('previewPane').appendChild(img);
}else img = subImages[0];
if(displayWaitMessage){
document.getElementById('waitMessage').style.display='inline';
}
document.getElementById('largeImageCaption').style.display='none';
img.onload = function() { hideWaitMessageAndShowCaption(imageIndex-1); };
img.src = imagePath;
}
function hideWaitMessageAndShowCaption(imageIndex)
{
document.getElementById('waitMessage').style.display='none';
document.getElementById('largeImageCaption').innerHTML = imageGalleryCaptions[imageIndex];
document.getElementById('largeImageCaption').style.display='block';
}
window.onload = initSlideShow;
更新
我開控制檯網頁錯誤是:
[11:36:48021] GET http://www.mess.tn/mywebsite/scripts/image-slideshow.js [HTTP/1.1 404未找到爲11ms]
你能告訴你的javascript代碼? – n8coder
我們是否也可以看到直播網站的鏈接? – designtocode
圖像和包含'showPreview'代碼的JavaScript文件是否也上傳到服務器?並有服務器相同的文件夾結構?你在'head'部分使用了一個' 標籤嗎?這有時會導致本地和在線開發之間的問題 –
Kirschi