質問

FancyBox v.1.3.4を使用して、このページに映画を表示しています。 Fancyboxとビデオは罰金を表示しますが、問題は、コードを追加するため、IE7 / 8のサイトをロードするときに巨大な一時停止をしています。この問題 - ページロード、そしてその後、UIが4~5秒かかります。リンクをクリックしたり、スクロールしたり、他のものをクリックしたりするのを防ぎます。これが私がPageの上部にリンクしているもの、<head>にあります。 jQuery UI Pack(UI 1.8.11、UIウィジェット、UI Position、UIエフェクト、およびUIエフェクトW / Scaleを含む)は、主に、サイトにまだロードされていないが他の影響を有効にすることですが、そうなります。< / P>

<script type="text/javascript" src="/lib/jquery/jquery-latest.min.js"></script>
<script type="text/javascript" src="/lib/jquery/jquery-ui.custom.min.js"></script>
<script type="text/javascript" src="/lib/fancybox/jquery.fancybox-1.3.4.pack.js"></script>
<link rel="stylesheet" href="/lib/fancybox/jquery.fancybox-1.3.4.css" />
.

私はページ上でyslowを使用しました。その後、IE8の開発者ツールを使用してロード中にHTML DOMを見て、FancyBoxのコードがロードされているため、一時停止は発生しているようです。一時停止直後に、ツリーの下部に次のDIVが表示されます。

<div id="fancybox-tmp"/>
<div id="fancybox-loading" (jQuery attribute here)>
...
</div>
<div id="fancybox-overlay"/>
<div class="fancybox-ie" id="fancybox-wrap">
...
</div>
.

それは、私がページにFancyboxを追加した後に問題が登場したという事実に沿って、私がFancyboxのパフォーマンスの問題であると考えましたが、これまでに試してみたことは何もありません(Fancyboxコードを短くするのは短い)影響を与えたようです。私が試した最新のことはjQuery.Ready()への参照を削除していますが、それが早くFancyboxコードをロードするのを手伝ってから一時停止のタイミングを変更するかもしれませんが、それほど良くはしませんでした。私は本当にそれを予想していませんが、私はjQueryとFancyboxの少し新しい、そしてこの時点で私はストローで握られています。

今考えているのは、Google Analyticsなどのページ上の他のスクリプトの1つと対数の間の競合になる可能性があるが、それが事実であるかどうかを判断する方法は確かではありません。それが終わっているならばするためにする。これらのスクリプトの周りに彼らの道を知っている人々からのアイデアはどれかですか?事前にありがとうございます。

役に立ちましたか?

解決

I've experienced a similiar problem with fancybox and IE before. If you look in the CSS file, there are a tonne of IE specific filters:

/* IE6 */

.fancybox-ie6 #fancybox-close { background: transparent; filter: 
progid:DXImageTransform.Microsoft.AlphaImageLoader
(src='fancybox/fancy_close.png', sizingMethod='scale'); }

/* and so on */

In my project, I removed all of these IE specific rules and the freezing problem goes away. See if that resolves it; else the problem may be somewhere else.

他のヒント

you could use firebug to profile your code

I also had this problem with Fancybox in IE. For me it was a bug in jQuery introduced in v1.6.0. Upgrading to the latest jQuery version (1.6.4) fixed the issue.

More details at the Fancybox google group

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top