2016-04-15 12 views
1

Also versuche ich alles außerhalb meiner Phantasiebox zu verwenden, ohne es zu schließen.Klicke außerhalb von fancybox2

Also habe ich closeclick auf false gesetzt. Ich habe es auch ziehbar gemacht, damit ich es auf dem Bildschirm bewegen kann, aber wenn ich versuche auf einen Knopf zu klicken, wird es mich nicht lassen. Ich recherchierte überall, aber jeder hat nur Möglichkeiten, um es zu schließen, indem Sie klicken, um ein Ereignis außerhalb davon zu feuern. Ich weiß, dass es durch einen Iframe gelaufen ist, so recherchiert das auch, aber kein Glück noch.

Wenn dies nicht möglich ist, gibt es eine andere Möglichkeit, Popups zu haben. Ich möchte in der Lage sein, auf Dinge außerhalb der Fan- xybox zu klicken.

-edit nach einem Monat.

Erforscht und muss es noch herausfinden. Arbeitete an anderen Projekten, dann kam diese wieder auf. Jetzt versuche ich auch herauszufinden, wie man eine Fancybox in einer Fancybox öffnet. Machen Sie die zweite ziehbare (nicht die erste) und klicken Sie in die Fancybox. Es sei denn, fancybox ist nicht der Weg, mit all dem zu gehen, es gibt auch andere Möglichkeiten, es zu tun.

Hier ist meine erste Seite

$(".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> 

Hier ist, was es im Inneren des fancybox auf einer anderen Seite.

Aber wenn ich das führe, kommt die Fancybox nicht raus es geht einfach zur nächsten Seite. Nicht sicher, ob es das erste schließt, um dieses zu öffnen oder wenn es gerade weiterleitet.

Ich versuchte Here, aber das schien nicht zu funktionieren. Dies ist etwas, das mich seit Ewigkeiten nervt, so dass jede Hilfe geschätzt wird.

+0

Haben Sie y unser Code irgendwo online? – EGN

Antwort

1

sollten Sie in der Lage sein, die helpers.overlay Option auf false zu setzen, die die Überlagerung verhindert aus zeigt:

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(); 
    } 
}); 

dass Failing, innerhalb der beforeShow Methode, können Sie einfach das Overlay-Element entfernen. Es gibt einen Bereich um den Dialog herum, der nicht anklickbar ist (für den Verlaufseffekt), aber alles andere funktionierte für mich.

HTH

+0

Sie sind fantastisch! So kann ich außerhalb klicken, was ich wollte. Also wenn ich versuche Eltern hinzuzufügen. dazu funktioniert es nicht. Wenn ich es ausziehe, funktioniert es, aber es bleibt in der Fancybox. Gibt es da irgendwie einen Ausstieg aus der Fancybox oder sollte ich einfach den ersten größer machen und dann den in der Größe, die ich möchte. Willst du versuchen, alles klein zu halten, also sei fantastisch, wenn ich die Fancybox außerhalb davon bekommen kann. (Ich benutze die Phantasie-Overlay.entfernen) – KratosMafia

+0

@KratosMafia - Nur um zu verdeutlichen, versuchst du, eine neue Fancybox aus einem Iframe zu initiieren, das bereits in fancybox angezeigt wird? – Gavin

+0

Okay. Ich möchte eine Fancybox öffnen, die ich bin. Dann öffne in dieser Fancybox eine zweite und kannst diese verschieben, aber die erste Fancybox klickbar machen. Wenn das irgendeinen Sinn ergibt. Aber ich möchte, dass die zweite Fancybox auch außerhalb der ersten ist. – KratosMafia

0

Zwei Schritte:

1) Stellen Sie die overlayShow Option auf false

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

2) Stellen Sie die Polsterung auf 0, können Sie das erreichen, indem padding: 0 zu Ihrem fancybox Container Hinzufügen oder fügen Sie es zu Ihrer CSS-Datei

.fancybox-wrap { 
    padding: 0 !important; 
}