带jquery BBQ的jquery同位素哈希历史记录

带jquery BBQ的jquery同位素哈希历史记录,jquery,jquery-isotope,Jquery,Jquery Isotope,我正在玩过滤,这很好。当用户单击其中一个图像时,它会显示一个不同的页面(详细信息页面),但用于过滤图像的菜单仍然存在。现在我想要的是,当用户再次点击其中一个可能性时,他返回主页,但已经有了过滤结果 我已经读过这一页了,但是我承认我不理解很多东西 我有以下HTML代码,正如他们所建议的: div id="leftMenu"> <span><a href="#filter=*" >All Menus</a></span>

我正在玩过滤,这很好。当用户单击其中一个图像时,它会显示一个不同的页面(详细信息页面),但用于过滤图像的菜单仍然存在。现在我想要的是,当用户再次点击其中一个可能性时,他返回主页,但已经有了过滤结果

我已经读过这一页了,但是我承认我不理解很多东西

我有以下HTML代码,正如他们所建议的:

div id="leftMenu">

            <span><a href="#filter=*" >All Menus</a></span>
            <span><a href="#filter=.pizza" >Pizza </a></span>
            <span><a href="#filter=.soda" >Soda </a></span>
            <span><a href="#filter=.popcorn" >PopCorn</a></span>
            <span><a href="#filter=.beer" >Beer</a></span>
         </div> 
但我在depram函数中出错了。它告诉我$.depram不是一个函数

我必须链接其他额外的文件才能读取depram方法吗

有谁能帮助我如何完成或理解

非常感谢

编辑-我的进度 我找到了两个额外的js文件,我将我的项目链接到它们,并使用以下代码

$('#leftMenu span a').click(function() {
        // get href attr, remove leading #
        var href = $(this).attr('href').replace(/^#/, ''),
        // convert href into object
        // i.e. 'filter=.inner-transition' -> { filter: '.inner-transition' }
        option = $.deparam(href);
        // set hash, triggers hashchange on window
        $.bbq.pushState(option);
        console.log("--> " +option );
        //return false;
    });     


$(window).bind('hashchange', function(event) {
    alert('Hello');
    // get options object from hash
    var hashOptions = $.deparam.fragment();
    console.log(hashOptions);
    // apply options from hash
    $('#leftMenu span a').isotope(hashOptions);
})
// trigger hashchange to capture any hash data on init
.trigger('hashchange');
我没有任何错误。但它不会影响过滤器

我可以得到警报(“你好”)


有什么想法吗???

我找到了解决办法。我的js代码中有一个错误

这是密码

$container.isotope({});


    $('#leftMenu span a').click(function() {
        // get href attr, remove leading #
        var href = $(this).attr('href').replace(/^#/, ''),
        // convert href into object
        // i.e. 'filter=.inner-transition' -> { filter: '.inner-transition' }
        option = $.deparam(href);
        // set hash, triggers hashchange on window
        $.bbq.pushState(option);
        return false;
    }); 



    $(window).bind('hashchange', function(event) {
        // get options object from hash
        var hashOptions = $.deparam.fragment();
        // apply options from hash
         $container.isotope(hashOptions);
    })
    // trigger hashchange to capture any hash data on init
    .trigger('hashchange'); 
我认为,
$container.同位素(hashOptions)
指的是菜单项,但实际上它指的是结果容器

$container.isotope({});


    $('#leftMenu span a').click(function() {
        // get href attr, remove leading #
        var href = $(this).attr('href').replace(/^#/, ''),
        // convert href into object
        // i.e. 'filter=.inner-transition' -> { filter: '.inner-transition' }
        option = $.deparam(href);
        // set hash, triggers hashchange on window
        $.bbq.pushState(option);
        return false;
    }); 



    $(window).bind('hashchange', function(event) {
        // get options object from hash
        var hashOptions = $.deparam.fragment();
        // apply options from hash
         $container.isotope(hashOptions);
    })
    // trigger hashchange to capture any hash data on init
    .trigger('hashchange');