Tworzę stronę internetową z Popover Bootstrap i nie mogę wymyślić, jak wyświetlić popover po najechaniu myszą zamiast kliknięcia.
Chcę tylko, aby pojawiło się okno popover, gdy ktoś najedzie kursorem na link zamiast go klikać, a okno popover zniknie po odejściu. Dokumentacja mówi, że jest to możliwe przy użyciu atrybutu danych lub jquery. Wolałbym to zrobić za pomocą jquery, ponieważ mam wiele popoverów.
javascript
jquery
twitter-bootstrap
Muhambi
źródło
źródło
Odpowiedzi:
Ustaw
trigger
opcję popover nahover
zamiastclick
, która jest domyślna .Można to zrobić za pomocą jednego z
data-*
atrybutów w znaczniku:Lub z opcją inicjalizacji:
Oto DEMO .
źródło
<script> $(function () { $("#popover").popover(); }); </script>
$("#popover").popover({ trigger: "hover" });
.Chciałbym dodać to dla ułatwienia dostępu, myślę, że powinieneś dodać wyzwalacz aktywności:
to znaczy
$("#popover").popover({ trigger: "hover focus" });
źródło
Jeśli chcesz najechać kursorem na samego popovera, musisz użyć wyzwalacza ręcznego.
Oto co wymyśliłem:
źródło
Opisaną funkcjonalność można łatwo uzyskać za pomocą podpowiedzi Bootstrap.
Następnie wywołaj funkcję tooltip () dla elementu.
http://getbootstrap.com/javascript/#tooltips
źródło
Po wypróbowaniu kilku z tych odpowiedzi i stwierdzeniu, że nie skalują się one dobrze z wieloma linkami (na przykład zaakceptowana odpowiedź wymaga wiersza jquery dla każdego linku), natknąłem się na sposób, który wymaga minimalnego kodu do działania, i wydaje się również działać idealnie, przynajmniej w Chrome.
Dodaj tę linię, aby ją aktywować:
I te ustawienia do linków kontrolnych:
Zobacz to w akcji tutaj , używam tego samego importu co zaakceptowana odpowiedź, więc powinno działać dobrze na starszych projektach.
źródło