2012-01-14 18 views
1

jQueryを使用してホバー状態の新しい画像をフェードインし、現在のpngを "_over.png"に置き換えています。 ChromeとSafariではうまく動作しますが、Firefoxでは動作しません。FirefoxのjQueryホバー問題

最初の.pngと同じフォルダで_over.pngを検索する代わりに、URLを削除して_overを追加しません。だからfirefoxはロールオーバーで "http:www.png"を検索しますが、まだフェードが起こります。

は、これは私の関数である:

$(function() { 

$('img.fade').hover(function() { 
    var src = $(this).attr("src").match(/[^\.]+/) + "_over.png"; 
    $(this) 
     .animate({opacity:0},0) 
     .attr('src',src) 
     .stop() 
     .animate({opacity:1},1000); 
}, 

function() { 
    var src = $(this).attr("src").replace("_over", ""); 
    $(this) 
    .animate({opacity:0},0) 
    .attr('src',src) 
    .stop() 
    .animate({opacity:1},1000); 
}); 
}); 

私はjQueryのに新たなんだとこのオンラインへの解決策を見つけていないので、私は失われ、合計でね。それはちょうど明らかな愚かな間違いかもしれない。どんな助けでも大歓迎です。

答えて

0

"_over"を追加しようとしていますか?

var src = $(this).attr("src").match(/[^\.]+/) + "_over.png" 

match()方法は、ブラウザ間の矛盾を説明するだろうあなたのために何か役に立つ、とよく、またはしない場合がありtoString()マッチオブジェクトを返します。あなたはおそらく、単に

var src = $(this).attr("src").replace(/\.png$/i, "_over.png"); 
+0

助けてくれてありがとう何で何

。それはうまくいかなかった...それは完全に壊れてしまった。しかし、私はそれを理解したと思う。私はjquery-1.5.jsとmasonry.jsを同時に呼び出していましたが、これはFirefoxとIEでクラッシュするようです...それらはChromeでうまく機能しています。再度、感謝します! – danielle

関連する問題