2017-03-14 2 views
1

私は最近fancybox 3を試すことにしました。オープンブートストラップモーダルウィンドウでのみ表示される非常に奇妙なバグが見つかりました。ファンシーボックス3とブートストラップ3モーダル奇妙なバグ

あなただけがすべてで、画像を開いて、前または次を選択しているときに、私は

<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet" type="text/css" /> 
 
<link href="https://gitcdn.xyz/repo/fancyapps/fancybox/master/dist/jquery.fancybox.css" rel="stylesheet" type="text/css" /> 
 
<script src="https://code.jquery.com/jquery-3.1.1.js"></script> 
 
<script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/js/bootstrap.js"></script> 
 
<script src="https://gitcdn.xyz/repo/fancyapps/fancybox/master/dist/jquery.fancybox.js" type="application/javascript"></script> 
 

 
<!-- Gallery modal --> 
 
<div id="galleryModal" class="modal fade" tabindex="-1" role="dialog" aria-labelledby="galleryModal"> 
 
    <div class="modal-dialog modal-lg" role="document"> 
 
    <div class="modal-content"> 
 
     <div class="modal-header"> 
 
     <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button> 
 
     <h4 class="modal-title">Cats Gallery</h4> 
 
     </div> 
 
     <div class="modal-body"> 
 
     <a href="http://www.cats.org.uk/uploads/images/featurebox_sidebar_kids/grief-and-loss.jpg" 
 
      data-fancybox="gallery" 
 
      class="btn btn-default" 
 
      >Show Cat 1</a> 
 
     <a href="http://cdn1-www.cattime.com/assets/uploads/gallery/persian-cats-and-kittens/persian-cats-and-kittens-1.jpg" 
 
      data-fancybox="gallery" 
 
      class="btn btn-default" 
 
      >Show Cat 2</a> 
 
     </div> 
 
    </div> 
 
    </div> 
 
</div> 
 

 
<button class="btn btn-default" data-toggle="modal" data-target="#galleryModal">Show cats</button> 
 
<br /> 
 
<br /> 
 
<a href="http://www.cats.org.uk/uploads/images/featurebox_sidebar_kids/grief-and-loss.jpg" 
 
    data-fancybox="gallery2" 
 
    class="btn btn-default" 
 
    >Show Cat 1</a> 
 
<a href="http://cdn1-www.cattime.com/assets/uploads/gallery/persian-cats-and-kittens/persian-cats-and-kittens-1.jpg" 
 
    data-fancybox="gallery2" 
 
    class="btn btn-default" 
 
    >Show Cat 2</a>

(フルページモードで表示)の例として、少しデモを行いました良い。しかし、あなたがブートストラップモーダルウィンドウから同じことをしているときには...ブラウザコンソールを見てください...それは間違いでいっぱいです。ファンシーボックスによるフォーカスイベントが、モーダルのフォーカスイベントと奇妙に交差するように見えます。

私の質問は、ライブラリコードを変更せずにこれをどのように修正できますか?

+0

私は空想のボックスに、[問題](https://github.com/fancyapps/fancybox/issues/1288)を追加しました。その状態を確認することができます。 –

答えて

1

ファンシーボックスv3を使用している場合は、モーダル機能に追加のスクリプトは必要ありません。 fancyBoxを使用して、両方のモーダルを表示することができます。

<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet" type="text/css" /> 
 
<link href="https://gitcdn.xyz/repo/fancyapps/fancybox/master/dist/jquery.fancybox.css" rel="stylesheet" type="text/css" /> 
 
<script src="https://code.jquery.com/jquery-3.1.1.js"></script> 
 

 
<script src="https://gitcdn.xyz/repo/fancyapps/fancybox/master/dist/jquery.fancybox.js" type="application/javascript"></script> 
 

 
<!-- Gallery modal --> 
 

 

 
    <div id="galleryModal" class="modal-content" style="display:none;"> 
 
     <div class="modal-header"> 
 
     <button type="button" class="close" data-fancybox-close aria-label="Close"><span aria-hidden="true">&times;</span></button> 
 
     <h4 class="modal-title">Cats Gallery</h4> 
 
     </div> 
 
     <div class="modal-body"> 
 
     <a href="http://www.cats.org.uk/uploads/images/featurebox_sidebar_kids/grief-and-loss.jpg" 
 
      data-fancybox="gallery" 
 
      class="btn btn-default" 
 
      >Show Cat 1</a> 
 
     <a href="http://cdn1-www.cattime.com/assets/uploads/gallery/persian-cats-and-kittens/persian-cats-and-kittens-1.jpg" 
 
      data-fancybox="gallery" 
 
      class="btn btn-default" 
 
      >Show Cat 2</a> 
 
     </div> 
 
    </div> 
 

 

 

 
<button class="btn btn-default" data-fancybox data-options='{"smallBtn":false, "buttons":false}' data-src="#galleryModal">Show cats</button> 
 
<br /> 
 
<br /> 
 
<a href="http://www.cats.org.uk/uploads/images/featurebox_sidebar_kids/grief-and-loss.jpg" 
 
    data-fancybox="gallery2" 
 
    class="btn btn-default" 
 
    >Show Cat 1</a> 
 
<a href="http://cdn1-www.cattime.com/assets/uploads/gallery/persian-cats-and-kittens/persian-cats-and-kittens-1.jpg" 
 
    data-fancybox="gallery2" 
 
    class="btn btn-default" 
 
    >Show Cat 2</a>

+0

アドバイスをいただきありがとうございます。しかし、開発者として私は問題の根本を知ることを好むことを好む。例えば、顧客はブートストラップ・モーダルのみを主張します:) –

+0

これは簡単です。 fancyBoxとBootstrapの両方がフォーカスをトラップしようとします。したがって、ループを開始します - 閉じるボタンはfancyBoxの内部でフォーカスを取得します - >ブートストラップモーダルはフォーカスを取得しようとします - > fancyBoxはフォーカスを戻そうとします - >ブートストラップモードはそれを取り戻そうとしました - > .... – Janis

関連する問題