Javascript Jquery代码没有';在firefox/ie上无法正常工作

Javascript Jquery代码没有';在firefox/ie上无法正常工作,javascript,jquery,firefox,jquery-isotope,jquery-bbq,Javascript,Jquery,Firefox,Jquery Isotope,Jquery Bbq,我有以下代码() 这段代码在chrome上运行良好。但在Firefox22和IE10中,它的行为很奇怪 当点击颜色时,一切正常。返回时,代码的行为方式应确保清除.selected,并仅将其添加到正确的节点。结果是,选中的.selected在DOM中被清除(如果我检查元素),但在屏幕上却没有。我单击屏幕上的任意位置后,该类将被删除 此外,如果我使用firebug等进行调试,则不会发生这种情况 代码中是否缺少任何内容?删除css中的a:focus,或将blur添加到$('.selected').re

我有以下代码()

这段代码在chrome上运行良好。但在Firefox22和IE10中,它的行为很奇怪

当点击颜色时,一切正常。返回时,代码的行为方式应确保清除
.selected
,并仅将其添加到正确的节点。结果是,选中的
.selected
在DOM中被清除(如果我检查元素),但在屏幕上却没有。我单击屏幕上的任意位置后,该类将被删除

此外,如果我使用firebug等进行调试,则不会发生这种情况


代码中是否缺少任何内容?

删除css中的
a:focus
,或将
blur
添加到
$('.selected').removeClass('selected').blur()
hashchange


只有一个
。选中的

我不知道哪个部分不工作,单击相应的颜色名称框就会出现(很好的过渡效果,顺便说一句),其余的消失,这是想要的效果吗?在我的firefox 22.0中运行良好!单击颜色时,效果良好。单击“上一步”按钮时出现问题。你应该回到以前的颜色。但是有两种颜色被标记为
。选择的
。如果我错过了小提琴中的明显部分,我很抱歉,但是我在浏览器中没有看到任何后退按钮后退按钮
$(function(){

    var $container = $('#gallery');
    $container.isotope({
        filter: '*',
        animationOptions: {
            duration: 750,
            easing: 'linear',
            queue: false
        }
    });

    var $optionSets = $('ul.nav'),
        $optionLinks = $optionSets.find('a');

    $optionLinks.click(function () {
        var $this = $(this);
        if ($this.hasClass('selected')) {
            return false;
        }
        var $optionSet = $this.parents('ul.nav');
        $optionSet.find('.selected').removeClass('selected');
        $this.addClass('selected');
    });


    // HASH HISTORY WITH JQUERY BBQ

    $('ul.nav 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, true);
        // set hash, triggers hashchange on window
        $.bbq.pushState(option);
        return false;
    });

    //just a function to quickly add and remove .selected
    function changeSelectedLink($elem) {


        $elem.addClass('selected');
    }

    $(window).bind('hashchange', function (event) {
        //checks if there is a hash in the url and puts hashes in hashOptions
                            $(".selected").removeClass("selected");

        var hashOptions = window.location.hash ? $.deparam.fragment(window.location.hash, true) : {}, options = $.extend({}, hashOptions);
        $('#gallery').isotope(options);
        var hrefObj, hrefValue, $selectedLink;
        //go over each hashOption and convert it to a variable 

        for (var key in options) {
            hrefObj = {};
            hrefObj[key] = options[key];
            hrefValue = $.param(hrefObj);
            $selectedLink = $('ul.nav').find('a[href="#' + hrefValue + '"]');
            changeSelectedLink($selectedLink);
        }
    }).trigger('hashchange'); //this continues the hashchange event
});