Używam twittera typeahead.js 0.9.3 i wygląda na to, że moje sugestie wcale nie są stylizowane.
Dostaję to:
Zamiast czegoś takiego: (wzięty ze strony przykładów )
JavaScript włącza typeahead:
$('.search-typeahead').typeahead({
name: 'videos',
remote: {
url: '/api/v1/internal/videos/typeahead?text=%QUERY'
}
});
Element wejściowy HTML:
<input type="text" value="" id="search_keywords" class="no-clear search-typeahead"/>
Dodatkowe uwagi:
Witryna, nad którą pracuję, ma jQuery 1.10.1 i nie używa twitterowego bootstrapu. Jest kilka plików CSS, których nie napisałem i dlatego nie jestem zaznajomiony z czym, obawiam się, że przeszkadzają, ale wygląda na to, że wtyczka dodaje własne style (nie ma dołączonego pliku .css), więc nie powinna teoretycznie zastępować rzeczy ? Jestem zdezorientowany, dlaczego moje style działają, ale te dodane przez wtyczkę nie działają, co powoduje sugestie z przezroczystym tłem, bez granic itp.
źródło
tt-is-under-cursor
nazwa klasy została zmieniona natt-cursor
. Dokumentacja tutaj .tt-input
zamiasttt-query
(jak w 0.10.5)cursor: pointer;
aby.tt-is-under-cursor
mieć odpowiedni kursor, który mówi użytkownikowi, że musi kliknąć.Poniższe style nadadzą Ci ten wygląd. Opiera się na CSS wyodrębnionym z oficjalnej witryny przykładów Typeahead.
CSS:
Zakłada się, że twój wkład będzie miał
form-control
klasę. W moim przykładzie wygląda to tak:źródło
.tt-dropdown-menu
się teraz.tt-menu
. Dziękuję za odpowiedź.https://github.com/bassjobsen/typeahead.js-bootstrap-css/blob/master/typeaheadjs.css
Pozostałe nie wyglądały świetnie, ten najbardziej przypomina Bootstrap.
źródło
Typeahead zmienił niektóre nazwy swoich klas, a powyższe przykłady są teraz niepoprawne.
Na przykład:
.tt-suggestion.tt-is-under-cursor
używać.tt-suggestion:hover
.tt-dropdown-menu
, stosowanie.tt-menu
Jeśli chcesz pożyczyć styl ze strony przykładów , możesz zobaczyć ich arkusz stylów tutaj :
Oto wersja demonstracyjna stosu
Pokaż fragment kodu
źródło
Oto kod, który działa dla mnie:
źródło
Ponieważ mam mniej środowiska z dołączonym BS3, wziąłem kod css Zugwalt (umieściłem go w bardziej czytelnej hierarchii) i wypełniłem go stylem z rozwijanego menu bs3. Po prostu podąża za (dostosowanymi) zmiennymi.
źródło
Oto
scss
wersja, która w jak największym stopniu opiera się na zmiennych / deklaracjach bootstrap. Niestety nie można rozszerzyć zagnieżdżonych selektorów w sass, w przeciwnym razie byłby mniejszy:źródło
Jeśli używasz Bootstrap 4, wystarczy to zrobić:
źródło
W moim szczególnym przypadku rozwiązało to pozycjonowanie bezwzględne. Względne pozycjonowanie wypychało inne elementy ładowania początkowego, gdy lista sugestii (menu tt) była otwarta.
Możesz dodać to do powyższej odpowiedzi https://stackoverflow.com/a/26934329/1225421
źródło