2012-05-12 3 views
5

에서 연결하는 필터는 같은 페이지 portfolio.html에 아래의 방법을 사용하여 잘 작동 :동위 원소 필터 내가 JQuery와 동위 원소에서 일하고 있어요 다른 페이지

난 달성하기 위해 노력하고있어
<li class="current"><a href="#" data-filter="*">all</a></li> 
<li><a href="#" data-filter=".design">design</a></li> 
<li><a href="#" data-filter=".coding">coding</a></li> 
<li><a href="#" data-filter=".logo">logo</a></li> 

사용자가 필터링 된 카테고리에 다른 페이지에서 올 수 있도록 특정 카테고리에 연결하는 것입니다.

나는 다음과 같은 연결 방법을 시도했지만 작동하지 않았다 :

<a href="portfolio.html#filter=logo" data-filter=".logo">logo</a> 

이 사람이 나를 도울 수 있습니까? 카테고리를 사전 필터링하는 방법이 있습니까?

답변

5

동위 원소를 구성한 후에는 검색어 문자열 변수를 읽고 일치하는 필터 버튼을 클릭해야합니다.

jsFiddle 예 : http://jsfiddle.net/Y6vWn/

var filterFromQuerystring = getParameterByName('filter'); 
$('a[data-filter=".' + filterFromQuerystring + '"]').click(); 
+0

그런 다음 페이지에 링크하면 다음과 같이 더 명확하게 나타납니다. 'logo'- 쿼리 문자열을 사용하여 질문과 마찬가지로 해시가 아닙니다. – ArleyM

+0

당신이 @ ARleyM을 언급 한 href에 대해 작동하지 않습니다 – Sam

0

빌 -

나는 당신의 방법을 시도하고 작동 할 수없는 것. 그 두 줄은 모두 필요한 것입니까? 여기

<li><a href="entertainment.html">Entertainment</a> 
    <ul> 
     <li><a href="entertainment.html#party">Party bands, Show and Tribute bands</a></li> 
     <li><a href="entertainment.html#classical">Classical, Jazz, and Easy Listening</a></li> 
     <li><a href="entertainment.html#djs">DJs, Emcees, Variety, and Interactive</a></li> 
    </ul> 
</li> 

내 필터에 대한 코드 (ID를 여기에 사용되지 않는) :

<div id="filters"> 
<ul class="option-set" data-option-key="filter"> 
    <li><a id="f-all" href="#filter" class="selected" data-option-value="*">All</a></li> 
    <li><a id="f-party" href="#filter" data-option-value=".party">Party Bands</a></li> 
    <li><a id="f-classical" href="#filter" data-option-value=".classical">Classical, Jazz, and Easy Listening</a></li> 
    <li><a id="f-djs" href="#filter" data-option-value=".djs">DJs and Emcees</a></li> 
</ul> 

다음

내 동위 원소 필터링 된 페이지로 연결되는 링크의 메뉴 HTML입니다

그리고 필터링 된 페이지의 끝에 넣은 스크립트는 다음과 같습니다.

<script type="text/javascript"> 
$(document).ready(function() { 
    var pathname = window.location; 
    alert(pathname.toString()); //testing purposes 
    if(pathname.toString().indexOf("party") != -1){ 
     alert('shit went through 9'); //testing purposes 

     var filterFromQuerystring = 'party'; // getParameterByName('filter'); 
     $('a[data-option-value=".' + filterFromQuerystring + '"]').click(); 
    } 
}); 

URL의 해시 태그 뒤에 오는 것을 기준으로 페이지를 다른 필터로 선택하려고합니다. 이 문제를 해결할 더 똑똑한 방법이 있습니까?

+0

[jsFiddle] (http://jsFiddle.net)에 코드를 입력하면 작업하게 될 것입니다. – Bill