0

いくつかの jQuery プラグイン ( jqGridおよびjqPlot ) を使用する ASP.NET MVC3 Web サイトがあります。特に新しい CSS を使用して新しいページを開発しているときに、画像の読み込みが遅いことに気づきました。表示されるまでに 1 分以上かかる場合があります。

jqGrid では、主に jQuery UI スプライト ( images/ui-icons_6da8d5_256x240.png) からのページング アイコンでこれに気付きます。

jqPlot では、画像の背景 ( url(/Content/images/gray_block.png)) を持つ CSS クラスを使用するカスタム ポイント ラベルでこれに気付きました。

どちらの場合も、画像へのパスは有効ですが、何らかの理由で表示が非常に遅くなります。他の誰かが同様の問題を経験しましたか?

4

1 に答える 1

0

画像をプリロードすると、問題が修正されました。ここでソリューションを使用しました。

<script type="text/javascript">
    $.fn.preload = function () {
        this.each(function () {
            $('<img/>')[0].src = this;
        });
    }
</script>

// pre-cache icons
$(['@Url.Content("~/Content/images/orange_block.png")', 
   '@Url.Content("~/Content/images/yellow_block.png")', 
   '@Url.Content("~/Content/images/red_block.png")',
   '@Url.Content("~/Content/images/gray_block.png")',
   '@Url.Content("~/Content/themes/custom-theme/images/ui-icons_217bc0_256x240.png")'
 ]).preload();
于 2013-10-21T14:39:43.403 に答える