2011-07-01 9 views
0

prettyPhotoがIE7で正しく表示されません。ギャラリーに3枚の写真があり、3枚目の写真をクリックすると写真オーバーレイが表示され、他の写真は通常の写真のように振る舞います(写真の場所に移動するだけです)。prettyPhotoがIEで正しく動作しない

<ul class="gallery clearfix"> 
      <li><a href="images/j/DSCN0868.jpg" rel="prettyPhoto[gallery1]" title="Hermoso "><img src="images/j/DSCN0868.jpg" width="250" height="180" alt="" /></a></li> 
      <li><a href="images/j/DSCN0863.jpg" rel="prettyPhoto[gallery1]"><img src="images/j/DSCN0863.jpg" width="250" height="180" alt="" /></a></li> 
      <li><a href="images/j/DSCN0855.jpg" rel="prettyPhoto[gallery1]"><img src="images/j/DSCN0855.jpg" width="250" height="180" alt="" /></a></li> 
         </ul> 

Javascriptを::

<link rel="stylesheet" href="prettyPhoto/css/prettyPhoto.css" type="text/css" media="screen" title="prettyPhoto main stylesheet" charset="utf-8" /> 
<script type="text/javascript" src="http://code.jquery.com/jquery-latest.min.js"></script> 
<script src="prettyPhoto/js/jquery.prettyPhoto.js" type="text/javascript" charset="utf-8"></script> 
<script type="text/javascript" charset="utf-8"> 
    $(document).ready(function(){ 
      $("area[rel^='prettyPhoto']").prettyPhoto(); 

      $(".gallery:first a[rel^='prettyPhoto']").prettyPhoto({animation_speed:'normal',theme:'light_rounded',slideshow:3000, autoplay_slideshow: false}); 
      $(".gallery:gt(0) a[rel^='prettyPhoto']").prettyPhoto({animation_speed:'fast',slideshow:10000, hideflash: true}); 

      $("#custom_content a[rel^='prettyPhoto']:first").prettyPhoto({ 
        custom_markup: '<div id="map_canvas" style="width:260px; height:265px"></div>', 
        changepicturecallback: function(){ initialize(); } 
      }); 

      $("#custom_content a[rel^='prettyPhoto']:last").prettyPhoto({ 
        custom_markup: '<div id="bsap_1259344" class="bsarocks bsap_d49a0984d0f377271ccbf01a33f2b6d6"></div><div id="bsap_1237859" class="bsarocks bsap_d49a0984d0f377271ccbf01a33f2b6d6" style="height:260px"></div><div id="bsap_1251710" class="bsarocks bsap_d49a0984d0f377271ccbf01a33f2b6d6"></div>', 
        changepicturecallback: function(){ _bsap.exec(); } 
      }); 
    }); 
</script> 

おかげ

これは私のコードです!

+1

アドバイスのポイント、すべてをセットアップしてjsfiddleを作成すると、この質問がもっと早く理解できるようになります。 – Phil

+1

実際のページへのリンク、または問題を示す[jsFiddle demo](http://jsfiddle.net/)のいずれかのリンクを提供する必要があります。あなたの問題を解決できるようにするためには、最初にそれを作り直して問題の内容を確認する必要があります。問題を再現するために*時間を費やすつもりはありません。 – thirtydot

答えて

0

は、このギャラリーに関連して、あなたのjsのコードを変更してみてください:

 $(".gallery li:first a").prettyPhoto({animation_speed:'normal',theme:'light_rounded',slideshow:3000, autoplay_slideshow: false}); 
     $(".gallery li").slice(1).children('a').prettyPhoto({animation_speed:'fast',slideshow:10000, hideflash: true}); 

その後、動作するはずです:D

ところで。このような質問には、例へのリンク、またはjsfiddleデモが含まれていることが望ましいです。

0

私が見ているのは、あなたが3-4種類のセレクタでprettyPhoto()を呼び出していることです。これらのセレクタに複数の要素が複数含まれていないことを確認してください。この原因が原因の原因となります。

これをテストするには、各セレクタで一致する要素の長さを合計してみます。

関連する問題