jQuery .show()/.hide() not working in IE8 & 9, works in IE7, FF, Chrome, Safari

jQuery .show()/.hide() not working in IE8 & 9, works in IE7, FF, Chrome, Safari

Hello,

I have a bit of code that is working in nearly all browsers including IE7 but not working in IE8 or 9. I am attempting to use an unordered list as a button set to filter products by the selected attribute. This code works in conjunction with multiple sliders (which do work across the board).

Does anyone know if this is a jQuery issue? An issue with my code? Or, a browser compatibility issue?

Any help would be very appreciated.


jQuery Code:
  1. // filter by shape
    $(function()
    {
      $( ".buttonSet li a" ).click(function() {
         $( ".buttonSet li" ).removeClass('selected');
         $(this).parent('li').addClass('selected');
         var thisShape = $(this).attr('shape');
         if(thisShape!="all")
         {
            $('.data li[shape='+thisShape+']').show();
            $('.data li[shape!='+thisShape+']').hide();
         }
         else
         {
            $('.data li').show();
         }
         currShape = thisShape;
         if(currColor!="0")
            $('.data li[color!='+currColor+']').hide();
         if(currFlavor!="0")
            $('.data li[flavor!='+currFlavor+']').hide();
         if(currStyle!="0")
            $('.data li[pfstyle!='+currStyle+']').hide();
      });
    });