2011-08-04 3 views
0

私たちのアプリでは、HTMLをdbテーブルに保存し、特定の時点でHTMLをユーザーに出力します.HTMLにはかなりの数のイメージがあります私がしたいのは、HTMLをデータベースから取得し、イメージタグを、残りのデータが表示された後に読み込むことができるようなものに置き換えるときに、HTMLをあらかじめ解析することです。クライアント。文書の残りの部分が一旦ロードされたらイメージを置き換えて読み込み

ie。ドキュメントが返され、イメージが表示される前にドキュメントとイメージ全体が読み込まれるのを待たずに、クライアントがイメージを要求してロードします。

この種の機能を提供する、現在存在するもの、おそらくjqueryプラグインなどがありますか?

私たちのアプリは、あなたのimg srcが "#" で属性を交換して、カスタム属性を追加し、このような何か(jqueryのを使用しています)Telerikコントロールに

+0

[画像が読み込まれないようにする](0120)を参照する価値があります。 – Caspar

答えて

1

を使用してasp.net 3.5のウェブサイトである:

<img src="#" delayed="http://mydomain.com/myimage.png"/ > 

そこで、このような何かないページの読み込みjavascriptの行を追加します(未テストを、あなたのアイデアを得る):

$('img').each(function(){ 
    $(this).attr('src', $(this).attr('delayed')); 
}); 

遅延ロードのプラグインもあります。.. http://www.appelsiini.net/projects/lazyload

+0

このようなアプローチは大部分の人にとっては効果的ですが、 Javascriptが有効になっていないと完全に終了します。 – Caspar

+0

あなたはどの世界に住んでいますか?彼のアプリはjqueryに基づいています..jqueryがJSのライブラリであることを実感してください。それ以外の場合はどうすれば解決できますか? – Baz1nga

+0

優秀私はこれを行こう! –

0

この があなたのDBから取得したHTMLがdivあるとidmainを持っていることを言うことができますようにあなたが何かを行うことができます。ここでdivを解析すると、imgタグをdivと置き換えて、クラスsubと置き換えます。ただdivmain終了後に今script要素に画像を要求するajax呼び出しを書いて、各画像を受信したときに、クラスsub

0

非javscriptとdivにそのイメージを置くこの

<div id="main"> 
... 
... 
</div> 
<script type=text/javascript ....> // or use the src attribute to import a js file 
.... 
... 
.. 
</script> 

ようscript要素を置きますこれを行う方法は、代わりにタグを使用して、画像であるものすべてに背景画像を設定するCSSファイルを追加することです。したがって、jsはロードを遅延させません。あなたがこれを行うCSSインサイド

<body> 
    <div id="image1"></div> 
    <div id="image2"></div> 
    . 
    . 
    . 
    . 
</body> 
<link href="image.css" type="text/css"></link> 

#image1 { width: 100px; height: 100px; background: url(image1.jpg) } 
#image2 { width: 100px; height: 100px; background: url(image2.jpg) } 

これは、あなたが探している遅延ロードを行います。

関連する問題