2016-06-21 57 views
0

我有兩個html頁面,每個頁面上都有一個圖像。我需要能夠點擊第二頁上的圖像,並讓它重定向到第一頁 - 第一個圖像變爲第二個圖像。嘗試使用sessionStorage更改圖像的src

什麼是最佳/正確方式做到這一點?我一直試圖通過在sessionStorage中存儲src來做到這一點,但它似乎沒有工作。 這裏是setItem代碼:

<script type="text/javascript"> 
$('.images').on('click', '.groupOne', function(){ 
    var image = $(this).find("img"); // selects images inside group 
    var imageSrc = img.first().attr("src"); // get src of first image 
    sessionStorage.setItem("choice", imageSrc); 
    window.location.href = 'firstPage.html'; 
}); 
</script> 

然後改變第一形象,我需要使用getItem

<script type="text/javascript"> 
$(document).ready(function() { 
    var imgTwo = sessionStorage.getItem("choice"); 
    var imgOne = document.getElementById("pageOneImage"); 
    imgOne.src = imgTwo; //sets src of img1 to src of img2 
}); 
</script> 

但這似乎並不奏效。有更簡單的方法來使用更多的jQuery來做到這一點嗎?謝謝!

+0

發佈html以上 –

+0

更改sessionStorage到localStorage –

回答

0

也許不是最好的解決方案,但如何將src作爲參數添加到查詢字符串?

在第二頁:

window.location.href = 'firstPage.html?src=' + src; 

的第一頁:

var reg = new RegExp("(^|&)src=([^&]*)(&|$)", "i"); 
var r = window.location.search.substr(1).match(reg); 
var src = r != null ? unescape(r[2]) : null; 

現在你得到了SRC,如果從第二個頁面重定向。

+0

這不起作用 - 但我有一種感覺,我把代碼放在錯誤的地方。我會在哪裏放置這些行在第一頁上? – bzd91

+0

我認爲把這些行放在一個函數中是很好的,並且記得添加return語句。然後在任何你喜歡的地方調用它,但要確保你的url正確包含了src參數。 – YLS