2011-03-09 3 views
0

저는 jQuery를 처음 접했고 내가 원하는 것을 달성하는 데 도움이되는 플러그인/스크립트를 찾기가 매우 어려웠습니다. 에, 배경 이미지를 바꿀 수있는 스크립트가 있고 자동 새로 고침을하는 많은 로테이터가 있습니다. 나는 아티스트를위한 웹 사이트를 구축 중이며, 사용자가 홈 페이지를 새로 고칠 때마다 무작위로 다른 탐색을 사용하여 탐색을 바꾸거나 바꾸기를 원합니다. 아는 작은 관례가 아닌데 전체 예술 경험의 일부입니다.jQuery - 사용자가 홈 페이지를 새로 고침 할 때마다 새로운 탐색을 무작위로로드/바꾸기

저는 ul.home-nav-left 클래스를 예를 들어 무작위로 대체하고 싶습니다. ul.home-nav-left-1, ul.home-nav-left-2, ul.home-nav-left-3 - 각각의 navs는 다른 예술 작품을 보여주고 CSS 스프라이트입니다. 그 부분에 도움이 필요하지 않습니다. 목록 항목을 무작위로 바꾸지 않고 순서가없는 전체 목록을 바꾸고 싶습니다.

어떤 도움이나 지시 사항이 도움이 될 것입니다. 감사합니다!

+0

나는 개념이 그래서 내가 잘못 될 수 보지 그러나 나는이 일에 대해 조언한다. – longhairedsi

+0

유용성 문제를 일으킬 수 있지만 변경되지 않는 영구 메뉴가 있다는 것을 알 수 있습니다. 다른 작업을 표시하는 방법 일뿐입니다. 왜 그와 관련하여 조언을하는 것입니까, 아니면 다른 이유가 있습니까? –

+0

아아아, 그것은 무작위적인 갤러리/엄지 그림 유형의 것입니다. 나는 오해했다. 나는 네가 메인 네비게이션을 바꿀 줄 알았다. 그리고 그렇습니다. 사용성 문제가 발생했을 것입니다. – longhairedsi

답변

0

임의의 색인을 생성해야합니다. 그리고 "home-nav-left"를 css ".home-nav-left {display : none;}"와 함께 사용하십시오.

그러나 짧은 범위에서 생성 된 난수는 종종 동일 할 것입니다.

사용자에게 표시되는 마지막 메뉴 (쿠키, 데이터베이스 로그, 세션 등)를 기억하는 방법이 필요합니다.
PHP에 액세스 할 수 있다면 rand() 함수를 사용하는 것이 더 쉽지만 동일한 단점이 있습니다.

function randomFromTo(from, to){ 
    return Math.floor(Math.random() * (to - from + 1) + from); 
} 

$(document).ready(function(){ 
    var r = randomFromTo(1, $('.home-nav-left').length); 

    $('.home-nav-left').eq(r - 1).show(); 
}); 

http://jsfiddle.net/n4LWH/

+0

대단히 고마워! –

+0

각 사용자가 CSS에서 다른 이미지 스프라이트를 가지고 있기 때문에 사용자가 JavaScript를 끄고 각 ul 클래스가 필요한 경우 목록 중 하나에 표시 할 것이 좋습니다. –

+0

같은 클래스의 div에 각 UL을 래핑하겠습니다. uls에는 고유 한 클래스가 있습니다. –

0

내가 당신이라면 jquery에서 그렇게하지 않을 것입니다. 서버 측 언어 (ASP/PHP/.NET)로 할 것입니다. 모든 탐색 옵션을 모두 작성한 다음 간단한 '표시 : 없음'을 무작위로 선택한 탐색에 배치하거나 무작위로 선택한 탐색 옵션 만 쓸 수도 있습니다.

+0

대단히 감사합니다. 나는 간단한 웹 디자이너이지만 그 일에 어떻게 가야할지 모를 것이다! :) –

관련 문제