Вопрос по jquery – изотопный фильтр для ссылки с другой страницы

5

я работаю над изотопом jquery, и фильтр работает отлично, используя метод, приведенный ниже на той же странице portfolio.html:

<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>

Может кто-нибудь мне помочь? Есть ли способ предварительной фильтрации категорий?

Ваш Ответ

2   ответа
0

Я попробовал ваш метод и не могу заставить его работать. Эти две строки - все, что нужно?

Вот HTML-код меню для ссылки на мою страницу с изотопными фильтрами:

<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>

Вот код для моих фильтров (идентификаторы здесь не используются):

<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>

И вот сценарий, который я поместил в конце отфильтрованной страницы:

<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. Есть ли более разумный способ сделать это?

Error: User Rate Limit ExceededjsFiddleError: User Rate Limit Exceeded
5

как вы настроите изотоп, вам нужно прочитать переменную строки запроса и затем нажать соответствующую кнопку фильтра.

Пример jsFiddle:http://jsfiddle.net/Y6vWn/

var filterFromQuerystring = getParameterByName('filter');
$('a[data-filter=".' + filterFromQuerystring  + '"]').click();
Error: User Rate Limit Exceeded
Error: User Rate Limit Exceeded<a href="portfolio.html?filter=logo" data-filter=".logo">logo</a>Error: User Rate Limit Exceeded

Похожие вопросы