2011-10-21 2 views
0

기존 플러그인에 주소 플러그인을 추가하려고하는데 문제가 있습니다.Jquery 주소 플러그 및 기존 스크립트

여기 내 jquery 및 html입니다. 내 script.js 후 jquery.address-1.4.min.js을 포함하고,

jQuery.noConflict(); 
jQuery(document).ready(function($) { 

$('.dk_movie_list .grid').hide().css('visibility','visible').address(); 

$('.dk_movie_list .grids .all').show(); 

$('.dk_movie_list .grids .all').jScrollPane({ 
    verticalDragMinHeight: 205, 
    verticalDragMaxHeight: 205 
}); 

// Display all on initial load 
$('.dk_movie_list .grids .all').css({position:'absolute',display:'block'}); 

$('.dk_movie_list ul.nav li').click(function() { 
    $(this).addClass('btnSelect').siblings().removeClass('btnSelect'); 
    i = $(this).index(); 
    $('.dk_movie_list .grid:visible').fadeOut(400, function() { 

     $('.dk_movie_list .grid:eq(' + i + ')').fadeIn(400).address(); 

     $('.dk_movie_list .grid').jScrollPane({ 
     verticalDragMinHeight: 205, 
     verticalDragMaxHeight: 205 
     }); 

    }); 

    $('.dk_movie_list .grid').jScrollPane({ 
     verticalDragMinHeight: 205, 
     verticalDragMaxHeight: 205 
    }); 

    }); 
}); 


<ul class="nav"> 
         <li class="all"><a class="btnSelect" rel="address:all">All</a></li> 
         <li><a rel="address:Action-Adventure">Action-Adventure</a></li> 
         <li><a rel="address:Comedy">Comedy</a></li> 
         <li><a rel="address:Drama">Drama</a></li> 
         <li><a rel="address:Documentary">Documentary</a></li> 
         <li><a rel="address:Foreign">Foreign Films</a></li> 
         <li><a rel="address:Horror">Horror</a></li> 
         <li><a rel="address:Independent">Independent</a></li> 
         <li><a rel="address:Family">Family</a></li> 
         <li><a rel="address:Music">Music</a></li> 
         <li><a rel="address:Romance">Romance</a></li> 
         <li><a rel="address:SciFi-Fantasy">SciFi-Fantasy</a></li> 
         <li><a rel="address:Suspense-Thriller">Suspense-Thriller</a></li> 
        </ul> 

그냥 확인하기 위해 (다른 라이브러리가이 프로젝트에 포함을 위해 noConflict 필요). jScrollPane 라이브러리도 있습니다.

현재 각 앵커를 클릭하면 경로가 변경되고 뒤로 돌아갈 수 있지만 이전 localhost : 8888/#/Comedy를 복사하면 첫 번째 메뉴 항목이 기본값으로 설정됩니다.

제안이나 조언 주셔서 감사합니다.

+0

어떻게해야합니까? 페이지 새로 고침시 해시 태그를 확인하고 해시 태그가있는 경우 해당 항목으로 함수를 활성화해야합니다. http://www.brightcherry.co.uk/scribbles/2011/09/02/jquery-get-the-hash-tag-value-from-a-url/ –

+0

죄송합니다. 어떻게해야할지 모르겠습니다. js 비트를 추가하십시오. 좀 더 자세한 정보를 제공 할 수 있습니까? 다시 한 번 감사드립니다! – arkjoseph

답변

1

페이지 ID (해시 태그)는 클릭을 나타냅니다.

그래서 localhost : 8888/# Comedy 또는 localhost : 8888을 입력하면 어떤 차이가 발생합니다.

하지만 할 수있는 일은 pageload의 해시 태그를 확인한 다음 스크립트를 클릭하여 위협하는 것입니다.

그래서

if(window.location.hash) { 
//set the value as a variable, and remove the # 
var hash_value = window.location.hash.replace('#', ''); 
//i don't know your code so i can only simulate a click, you should instead do the real function 
$('a[rel$="'+hash_value+'"]').parent().click(); 
} 

임 당신이 LI 태그의 클릭을 wan't 가정, 아니, 당신이 당신의 JS와 대상이 무엇 그게 전부입니다.