2016-06-21 7 views
1

Ich kann data-trigger='focus' verwenden, um ein Popover zu schließen, wenn außerhalb klicken, oder data-trigger='click', wenn Sie erneut auf die Schaltfläche klicken. Aber ich kann nicht beides haben. Das heißt, wenn ich focus verwende, wird das Klicken auf den Popover-Button nichts tun.wie Bootstrap Popover zu entlassen, wenn Sie erneut klicken oder anderswo klicken

Ich möchte Popover in beiden Fällen entlassen, weiß jemand einen Weg, dies leicht zu tun?

Ich versuchte data-trigger='focus click', aber es funktioniert nicht.

EDIT: Ich glaube nicht, dass dies eine doppelte Frage ist. Sicher, die Lösung in dieser Frage funktioniert für mich. Aber der Titel dieser Frage: "Wie man ein Twitter-Bootstrap-Popover durch Klicken auf Außen" zu entlassen ist irreführend. Wenn ich die popover nur entlassen wollen außerhalb durch einen Klick, ich brauche nur data-trigger='focus', sagte, wie durch Bootstrap-Dokument:

den Fokus Trigger verwenden popovers auf dem nächsten Klick zu schließen, dass der Benutzer macht.

Aber wie ich erklärt habe, wird es nicht funktionieren, wenn Sie erneut auf den Popover-Trigger klicken.

Antwort

1

Ich bin nicht das, was Sie ohne zu sehen, einen Code bedeuten, sicher, aber ich würde es mit jQuery tun:

$('body').on('click', function (e) { 

    if ($(e.target).data('toggle') !== 'popover' 
     && $(e.target).parents('.popover.in').length === 0) { 
     $('[data-toggle="popover"]').popover('hide'); 
    } 
}); 

Ich hoffe, dass ich ein wenig helfen, Glück gut war!

Verwandte Themen