2017-04-25 15 views
0

サイト内のページ間を移動するときに、私は&がうまくフェードアウトするようにしています。ほとんどすべてのブラウザ(FF、Chrome、IE10 & 11、Android & iOS)でうまく機能しています。しかし、Safariデスクトップ(v.9.1,10.0、& 10.1)はフェードアウトしませんし、悪いことに、戻るボタンを押すと、返されたページは隠されます(不透明度0)。奇妙なことに、SafariのiOSには戻るボタンの問題はありません(ただし、ページを終了するとフェードアウトしません)。CSS + JQueryページフェードアウト/インザ - Safariの問題

これは現在どのように行われているのですか。より好ましい方法はありますか?

HTML:

<body> 
<div id="content-wrap" class="content fade-out">Page content here.</div> 
</body> 

はJQuery:

$(window).load(function() { 
    $("#content-wrap").removeClass("fade-out"); 
}); 

window.addEventListener("beforeunload", function() { 
    $("#content-wrap").addClass("fade-out"); 
}); 

CSS:私はSafariで動作するように物事を得ることができた

.content { 
opacity: 1; 
transition: 0.8s opacity; 
} 
.content.fade-out { 
opacity: 0; 
} 

答えて

0

JS(based on an answer found here)にこれを追加することによって:

window.addEventListener("pageshow", function() { 
$("#content-wrap").removeClass("fade-out"); 
}, false); 

これは$(window).load(function()を持つ任意の潜在的な衝突が発生した場合、私は確かではないんだけど、それは私がこれまでにテストしたすべてのブラウザでOK動作しているようです。