0
JS에서 초보자이며 무작위로 내 사이트의 페이지에 대한 배경 이미지를 선택하기위한 아주 간단한 스크립트를 작성했습니다. 문제는 새 페이지로 이동하거나 동일한 페이지를 다시로드 할 때 동일한 이미지가 무작위로 선택 될 때가끔 있습니다. 방금 브라우저에서 배경으로 사용 된 이미지를 저장하는 방법이 필요합니다.브라우저에 저장하여 무작위 페이지 배경을 반복하지 마십시오.
var rand_image_bg = function(){
$('<div id="background_container"><img class="background_image"/></div>').insertAfter("#menu");
var image_src = ["Images/spaceship.jpg", "Images/hallway.jpg", "Images/steampunk.jpg", "Images/mine.jpg"];
var selected_bg_image = Math.floor((Math.random()*image_src.length)+1)-1;
console.log($("body").data("bg_image"));
if (selected_bg_image == /*Number of the previous background image*/) {
selected_bg_image = image_src.length-1-selected_bg_image;
}
$(".background_image").attr("src",""+image_src[selected_bg_image]+"");
/*Record number of the new background image for later*/
}
어떤 조언을 누군가가 좋은 것입니다 저를 줄 수 :
여기 내 스크립트입니다. 나는 초심자이므로 계속 간결하게하십시오. 감사!
봐. – Boaz
일반적으로 상태를 HTML로 유지하는 세 가지 방법이 있습니다 (더 많이 있지만이 세 가지가 가장 일반적으로 사용됩니다). 쿠키 또는 localStorage를 사용하여 클라이언트 측에 정보를 저장하거나 서버 측에 정보를 저장합니다. 처음 두 가지는 아마 이것과 가장 관련이 있습니다. – adeneo
jQuery를 이미 사용하고 있으므로 jquery.cookie.js 플러그인을 살펴보십시오. 쿠키를 저장하고 가져 오는 것은 매우 쉽습니다. https://github.com/carhartl/jquery-cookie image_src 배열에 사용했던 경로의 인덱스를 저장하는 것만으로 간단합니다. –