2012-04-03 58 views
0

的代碼我使用的是從這裏拉圖像採集圖片:的JavaScript錯誤的位置

http://www.mywebsite.com/FILENAME/images/theimageiwant.jpg

我大寫的「名」是在某處的代碼被添加的部分。 IE瀏覽器。我只是想從拉圖片:

http://www.mywebsite.com/images/theimageiwant.jpg

如果有人可以幫幫忙,讓我知道我需要更改或刪除這將是非常有益的,其中的JavaScript的一部分。即使你可以告訴我哪個部分實際上是指'文件名',我可能會弄清楚。先謝謝你們。

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];} 
} 
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; 
} 

這是html的

<a href="javascript:;" onClick="MM_swapImage('main','','mywebsite.co.uk/images/porftfolio-main.jpg',1)">; 
<img src="mywebsite.co.uk/images/portfolio-thumb.jpg"; alt="portfolio-thumb" width="120" height="120" id="thumb1" /></a> 

這是一個主畫面,它下面的4頁更小的縮略圖,當你點擊一個畫廊 - 改變主畫面。代碼是標準的DW,但是Firebug告訴我對包含'文件名'的位置的圖像有不好的要求。

+0

你能告訴我們你的HTML嗎?我不認爲這個JavaScript是問題。這不是標準的Dreamweaver代碼嗎? – Curt 2012-04-03 10:46:15

+0

看到我的答案。 http://stackoverflow.com/a/9991742/370103希望這應該可以幫助你 – Curt 2012-04-03 10:54:55

回答

0

你指的文件爲images/blah.png或任何...
您需要在前面加一個斜槓:

來自: "images/blah.png"
到: "/images/blah.png"

+0

謝謝瑞安。它的尾部是斜線 - 它是從www.mysite.co.uk/FILENAME/images/myimage.jpg中拉出圖像 - 我試圖計算出抓取'文件名'的JS是什麼,因爲我所有的圖像都存儲了在根。 – Darren 2012-04-03 11:09:12

0

看到您的代碼:

<a href="javascript:;" onClick="MM_swapImage('main','','mywebsite.co.uk/images/porftfolio-main.jpg',1)">; <img src="mywebsite.co.uk/images/portfolio-thumb.jpg"; alt="portfolio-thumb" width="120" height="120" id="thumb1" /></a> 

更改mywebsite.co.ukhttp://mywebsite.co.uk

這會將您的鏈接更改爲absolute URLs,例如指向/images/porftfolio-main.jpg

+0

感謝您的幫助Curt,唯一的是我需要使用'mywebsite.co.uk'部分在那裏,否則它不會找到圖像。與我的.htacess設置的方式有關,用於增加文件擴展名並添加尾部斜線。任何其他想法? – Darren 2012-04-03 11:05:38

+0

@DarrenFox我沒有意識到這是針對不同的網站圖片。在這種情況下,您需要在開始處添加'http://',否則瀏覽器會將其視爲本地相對URL – Curt 2012-04-03 11:19:29

+0

是的,它也包含http://部分。下面找到了一個新的解決方案,但並不確定它是如何工作的。 – Darren 2012-04-03 11:25:53