3

FirefoxとInternetExplorerで正常に動作する次のjQueryコードがあります。Chromeでは機能せず、理由がわかりません。

私はbackground-imageこのコードで要素のを変更しようとしています:

$(".category-nav").find("a").each(function(index){
    if($(this).css("background-color") === "transparent" && !$(this).parent().hasClass("level1"))
    {
        $(this).css("background-image", "url(/images/gallery/images/arrow-cat-list-grey.png)");
    }
}); 
4

1 に答える 1

5

Chromeはrgba(0, 0, 0, 0)透明(デモ)と同様に背景色を返します

代わりにこのコードを試してください(デモ):

$(".category-nav").find("a").each(function(index){
    if ( /transparent|rgba\(0, 0, 0, 0\)/.test($(this).css("background-color") ) &&
          !$(this).parent().hasClass("level1") )
    {
        $(this).css("background-image", "url(/images/gallery/images/arrow-cat-list-grey.png)");
    }

});
于 2012-07-08T13:15:03.237 に答える