0

画像のサイズを変更し、それを使用して画像を提供するスクリプトがあります。

http://mysite.com/createthumb.php?filename=mypic.jpg

Fancybox は、次のリンクを使用して上記の画像を提供します。

<a href='createthumb.php?filename=mypic.jpg' class='fancybox' rel='lightbox[pics]' title=':: [ ]'><span></span><img src='createthumb.php?filename=mypic.jpg' alt='Loading...' /></a>

ただし、パラメーター「サイズ」をそのまま渡すことにより、デフォルトのサイズとは異なるサイズにサイズ変更する必要があります。

http://mysite.com/createthumb.php?filename=mypic.jpg&size=2000

しかし、fancybox のリンクを次のように変更すると:

<a href='createthumb.php?filename=mypic.jpg&size=2000' class='fancybox' rel='lightbox[pics]' title=':: [ ]'><span></span><img src='createthumb.php?filename=mypic.jpg' alt='Loading...' /></a>

ファンシーボックスがチョークし、リンクはライトボックスなしで画像として提供されるようになりました。これは、コードを変更してサイズ パラメータを確認しないようにしても当てはまります。つまり、リンクの末尾に「&size=2000」を追加するだけで、fancybox のバランスが完全に崩れてしまうようです。

これがなぜなのか、またはどうすれば修正できるのかについてのアイデアはありますか?

4

2 に答える 2

3

スクリプトは、リンクを見てコンテンツ タイプを推測できません。次の 3 つのオプションがあります。

1)スクリプトが検出できるように、最後に画像拡張子を追加してリンクを変更します-

<a href='createthumb.php?size=2000&filename=mypic.jpg' class='fancybox' ..

2) CSS クラス名を使用してコンテンツ タイプを指定します -

<a href='..' class='fancybox fancybox.image' ..

3) 初期化中にタイプを設定 -

$(".fancybox").fancybox({type : 'image'});
于 2012-11-06T08:27:10.100 に答える
0

fancybox が URL の末尾をチェックして、画像かどうかを判断しているようです。URL を次のように変更します。createthumb.php?size=2000&filename=mypic.jpg

https://github.com/fancyapps/fancyBox/blob/master/source/jquery.fancybox.js (767 行目)

于 2012-11-05T23:19:10.150 に答える