jQuery   发布时间:2022-03-30  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了jquery同位素哈希历史与jQuery BBQ大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在玩 isotope进行过滤,这很棒.当用户点击其中一个图像时,它会显示不同的页面(详细信息页面),但过滤其仍然存在的菜单.现在我想要的是当用户再次点击其中一种可能性时,他回到主页但是已经有了过滤结果.

我已经读过这个页面(http://isotope.metafizzy.co/docs/hash-history-jquery-bbq.html),但我承认我并没有理解很多东西

我有以下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>

和以下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
        console.log('value de href: '+href+ ' || option: '+option);
        $.bbq.pushState(recursiveDecoded);

        return false;
    });

但我在depram函数中出错了.它告诉我$.depram不是一个函数

我是否必须链接一个额外的文件来读取depram方法

任何人都可以帮助我如何完成或理解?

非常感谢

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

$('#leftMenu span a').click(function() {
        // get href attr,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,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.isotope(hashOptions);是指菜单项,但实际上它指的是结果容器.

大佬总结

以上是大佬教程为你收集整理的jquery同位素哈希历史与jQuery BBQ全部内容,希望文章能够帮你解决jquery同位素哈希历史与jQuery BBQ所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。