0

img次の方法を使用して、データベースから取得した画像(長いブロブとして保存されている)をタグに表示しています。

<img src="http://localhost:3000/show_image/265" />

show_image関数は、データベースから画像データを取得し、メソッドimgを使用してそれをタグにレンダリングします。send_data

Fancyboxをimgタグに適用すると、データは画像ではなくBLOBデータとして表示されます。

誰かが理由を提案できますか?または、どうすればこれを解決できますか?

4

2 に答える 2

1

1)fancyBoxを(画像ではなく)リンクに適用する必要があり、構造は次のようになります-

<a class="fancybox" href="big_image"><img src="small_image" /></a>

例 - http://jsfiddle.net/CYCeM/

実際には画像のみを持つことは可能ですが、「data-fancybox-href」属性を使用して大きな画像を指定する必要があります - http://jsfiddle.net/6ZSWB/

2) スクリプトは、href からコンテンツ タイプを推測できないようです。あなたはどちらかをしなければなりません-

a) 「http://localhost:3000/show_image/265.jpg」などの拡張子を持つリンクを作成します。

b)fancyboxのコンテンツタイプを設定します。例-$('.fancybox').fancybox(type : 'image');

于 2012-11-01T09:16:22.307 に答える
0

:type => "image/jpg" を設定すると、問題が修正されました。MIME コンテンツ タイプを調べたところ、間違って記述されていることがわかりました。

于 2012-12-11T15:40:14.507 に答える