Lightbox2 プラグインが Safari でうまく動かない件の Fix
WordPress の Lightbox2 プラグインはいくつかあると思うけど、lightbox2 プラグイン も wp-lightbox2 プラグイン も、Safari でうまく動かない。具体的には、画像の横幅が一番最初に表示させた画像の width 値で固定されてしまうため、2枚目以降の画像が枠からはみ出したり、逆に小さく表示されたりしてしまう。
この問題の Fix 方法は以下の通り。
lightbox2 プラグインの場合
I solved this using a quick hack (no time to track down the bug right now) after line 405 of lightbox.js I added the correct width to the element :
405: myLightbox.resizeImageContainer(imgPreloader.width, imgPreloader.height); 406: Element.setWidth('stimuli_lightboxImage', imgPreloader.width);
wp-lightbox2 プラグインの場合
上と同じ解決策だが、エレメントの名前が違うため、444行目に以下の1行を追加することになる。
443: myLightbox.resizeImageContainer(imgPreloader.width, imgPreloader.height);
444: Element.setWidth('lightboxImage', imgPreloader.width);
別のプラグインを試してみる
こちらの lightbox-2-wordpress-pluginは、最新の Lightbox 2.04 を実装しているそうなので、もしかしたらそのままでうまく動くかも。
実際に試してみたところ、このプラグインは Safari でも問題ないことがわかった。
ただ、残念ながら Flash から Lightbox を起動するスクリプトが動かなくなってしまった。
投稿画面の使い勝手などを考慮して、結局 wp-lightbox2 プラグインを手直しして使うことにした。