2009-08-27 26 views
1

我有一個代碼使用jquery替換href,.attr({href:newpath});我正在使用Shadowbox。更改href並加載shadowbox之後,shadowbox會加載舊的href而不是新的href。Shadowbox加載舊的href而不是新的href

例如:

<a id ="shadowboxlink" href="images/firstimage.jpg" rel="shadowbox">shadowbox link</a>

然後jQuery的將是這樣的:

$("#shadowboxlink").attr({href : newpath}); //whereas var newpath is a string like "images/secondimage.jpg"

所以後來執行的jQuery之後,shadowbowlink有圖像的正確HREF/secondimage.jpg,但是當您加載它時,shadowbox將加載firstimage.jpg

任何人有任何見解?謝謝! =) Ken

回答

0

僅僅通過查看shadowBox網站上提供的信息,聽起來像你想要做的只是在你的標記中添加第二個<a>

<a id ="shadowboxlink" href="images/firstimage.jpg" rel="shadowbox[gallery]">shadowbox link</a> 
<a id ="shadowboxlink" href="images/second.jpg" rel="shadowbox[gallery]">shadowbox link</a> 

並確保添加[圖庫](或任何你想要調用它)將這兩個圖像相互關聯。

如果這不是您要做的事,請在更改href後再次運行Shadowbox.init();代碼。

+0

對不起,我真的不明白通過 的shadowbox.init()didnt「在我的標記添加第二個」你是什麼意思'work = /,shadowbox仍在加載第一個href而不是第二個href – Ken

0

解決方案是使用「Shadowbox.setup」,並在您點擊某物時重新加載它。

謝謝大家。

4

嘗試清除緩存和設定變更後,href屬性

$("#shadowboxlink").attr({href : newpath}); //whereas var newpath is a string like "images/secondimage.jpg"; 
Shadowbox.clearCache(); 
Shadowbox.setup(); 
+0

這是正確的答案 - @ken,你應該真的把它標記爲正確的,這樣才能得到他應得的榮譽:) – iamkeir