2016-04-15 8 views
1

私はそれを閉じずにファンシーボックスの外にあるものをすべて使用できるようにしようとしています。fancybox2の外側をクリック

私はcloseclickをfalseに設定しました。 私はそれもdraggableにしたので、私は画面の周りを移動することができますが、私はそれを私を聞かせていないボタンをクリックしようとすると。 私はどこでも調べましたが、誰もがそれを外に出さないでクリックして閉じることができます。 Iframeを介して実行されていることもわかっていますので、これも調査しましたが、運はまだありません。

これが可能でない場合は、別の方法でポップアップを表示できます。私はfanxyboxの外にあるものをクリックできるようにしたい。

-edit月後。

まだ調査しておらず、まだ把握していません。他のプロジェクトに取り組んでいたのですが、もう一度このプロジェクトが起こりました。 私はまた、fancybox内でfancyboxを開く方法を理解しようとしています。 2番目のものをdraggable(最初のものではなく)にして、fancyboxの内部をクリックできるようにします。 fancyboxがこれをすべて使う方法でない限り、それを行う方法は他にありません。ここで

はここ

$(".fancybox").fancybox({ 
       fitToView: false, 
       beforeShow: function() { 
        this.width = 1000; 
        this.height = 300; 
       } 
      }); 


    <a class="fancybox fancybox.iframe" href=""> 
<center> 
<img src="images/calendar.png" border="0" style="height: 25px; width: 25px;" /></center> 
               </a> 

私の最初のページでは、別のページ上fancyboxの内側にあるものです。

parent.$(".fancybox").fancybox({ 
       fitToView: false, 
       beforeShow: function() { 
        this.width = 500; 
        this.height = 100; 
       }, 
       afterShow: function() { 
       $(".fancybox-wrap").draggable(); 
      } 
      }); 
<a class="fancybox fancybox.iframe" href=""> 
<img src="images/arrow-right-3.png" border="0" style="height: 25px; width: 25px;" /></a> 

しかし、私がその1つを実行すると、ファンシーボックスは出てこないだけで次のページに移動します。これを開くために最初のものを閉じるのか、それとも単にリダイレクトするのかはわかりません。

私はHereを試しましたが、動作していないようです。 これは何年もの間私を悩ませているので、どんな助けにも感謝します。

+0

y私たちのコードはどこかでオンラインですか? – EGN

答えて

1

あなたが表示からオーバーレイを防ぐことができますどのfalseにhelpers.overlayオプションを設定することができるはずです。

parent.$(".fancybox").fancybox({ 
    fitToView: false, 
    beforeShow: function() { 
     this.width = 500; 
     this.height = 100; 
     // If helpers.overlay = false doesn't work, uncomment below. 
     // $('#fancybox-overlay').remove(); 
    }, 
    helpers: { 
     overlay: false 
    }, 
    afterShow: function() { 
     $(".fancybox-wrap").draggable(); 
    } 
}); 

beforeShowメソッド内で、あなたは、単にオーバーレイ要素を削除することができ、それに失敗。ダイアログの周りにはクリッキングできない(グラデーション効果のための)領域がありますが、それ以外のものはすべて私のために働いています。

HTH

+0

あなたは素晴らしいです!だから、私が望む外をクリックすることができます。だから私は親を追加しようとします。それには、動作しません。私はそれを取り除くと動作しますが、それはfancyboxの内部にとどまります。ファンシーボックスからそれを取り出してもらえますか、最初のものを大きくしてから、次にサイズを大きくしてください。私はそれの外にfancyboxを得ることができる場合、それはすべての小さなので、最高に保つためにしようとします。 (私はファンシーオーバレイを使用しています。削除する) – KratosMafia

+0

@KratosMafia - 明確にするために、既にfancybox内に表示されているiframeから新しいfancyboxを開始しようとしていますか? – Gavin

+0

私はファンシーボックスを開きたい。そのファンシーボックス内で2番目のファンシーボックスを開き、そのファンシーボックスを動かして最初のファンシーボックスをクリック可能にします。それが意味をなさないならば。しかし、私は第2のファンシーボックスも最初のファンシーの外に出たいと思っています。 – KratosMafia

0

2つのステップ:

1)が0にパディングを設定する)偽

$(".fancybox").fancybox({ 
       fitToView: false, 
       overlayShow: false, 
       beforeShow: function() { 
        this.width = 1000; 
        this.height = 300; 
       }, 
       afterShow: function() { 
        $(".fancybox-wrap").draggable(); 
       } 
      }); 

2にoverlayShowオプションを設定し、あなたのfancyboxコンテナにpadding: 0を追加することによって、それを達成することができますCSSファイルに追加するか、

.fancybox-wrap { 
    padding: 0 !important; 
} 
関連する問題