Wiem, że to pytanie zostało zadane co najmniej trzy razy wcześniej, ale odpowiedź, którą zobaczyłem, nie była tym, czego szukałem. Czekam na zwiększenie szerokości pola autouzupełniania, które twitter bootstrap generuje z funkcją typeahead. Czytałem, że rozciąga się na cały tekst w polu. to znaczy, im dłuższy tekst, tym szersze pole autouzupełniania. Chciałbym jednak, żeby była to span6, ponieważ tak szerokie jest moje pole wyszukiwania. Jakieś pomysły? Widziałem kilka odpowiedzi jquery, ale nie mogłem ich przestrzegać.Rozszerzenie szerokości bootstrapu w celu dopasowania do pola wejściowego
Odpowiedz
Michael Watson dał to, co myślę jest najprostsza odpowiedź w swoim komentarzu.
.twitter-typeahead { width: 100%; }
Aktualizacja # 1: W oparciu o komentarzach poniżej (dzięki Steve Vishi), zrobić to samo dla .tt-hint
, .tt-input
, .tt-dropdown-menu
.
Aktualizacja # 2: mlissner doniesienia, że .tt-dropdown-menu
jest teraz .tt-menu
, więc końcowy wynik jest
.twitter-typeahead, .tt-hint, .tt-input, .tt-menu { width: 100%; }
menu rozwijane jest ul z klasami typeahead
dropdown-menu
można użyć CSS, aby ustawić jego szerokość:
.dropdown-menu
{
width: .... px;
}
Szerokość span6 nie jest statyczna, więc trzeba będzie kilka zapytań o media, aby go czuły.
Dla Bootstrap 3 funkcja usuwania jest usuwana z TB3 zamiast używać https://github.com/twitter/typeahead.js/.
Będziesz potrzebował trochę
additional CSS do integracji z Bootstrap na Twitterze.
Musisz załadować dodatkowe pliki CSS, aby uzyskać dostęp do menu rozwijanego typeahead.js
w celu dopasowania do domyślnego motywu Bootstrap. Wypróbuj extended Bootstrap's LESS lub jeśli szukasz bardziej rozbudowanej wersji spróbuj: typeahead.js-bootstrap3.less.
Lista rozwijana z ustawiana jest teraz z menu rozwijanym .tt-menu. Zamiast zmieniać CSS, możesz także spróbować ustawić szerokość dynamiczną. Z wpisywanie znaków z wyprzedzeniem klasy swojej wpisywanie znaków z wyprzedzeniem tagu wejściowych:
$('.typeahead').typeahead({})
on('typeahead:opened',function(){$('.tt-dropdown-menu').css('width',$('.typeahead').width() + 'px');});
Dzięki. Użyj $ ("# yourinput"). OuterWidth(), aby dopasować rzeczywistą szerokość wejściową –
to rozwiązanie z.twitter-typeahead {width: 100%; } pracował dla mnie –
@MichaelLWatson +1 dla prostego i prostego rozwiązania. – Trein
Aby uczynić rozwijana dopasować szerokość pola, że chcesz coś takiego:
$(document).on('typeahead:opened', function(event, datum) {
var width = $(event.target).width();
$('.tt-dropdown-menu').width(width);
});
Niewielkie ulepszenie w powyższym zakresie przy użyciu zdarzenia event.target i globalnego odbiornika dokumentów.
.outerWidth() działał lepiej dla mnie –
Używam Bootstrap 3.2.0 z typeahead.js-bootstrap3.less i zagnieżdżone wejście w div tak:
<div class="form-group">
<label>my label</label>
<div class="col-md-4">
<div class="input-group tt-input-group">
<input id="mytypeahead" class="form-control" />
</div>
</div>
</div>
Musiałem także dodać to do mojego CSS:
.tt-input-group {
width: 100%;
}
To jest dla nowsze wersje:
.twitter-typeahead, .tt-menu
{
display: block !important;
}
to wydaje się wyłączać rozwijanie sugestii znikając po wybraniu elementu –
- 1. Wyrażenie regularne w celu dopasowania "|"
- 2. Ocena Androida pod kątem dopasowania do szerokości
- 3. Zmiana rozmiaru ImageView w celu dopasowania do proporcji obrazu
- 4. Dynamiczne skalowanie obrazów w celu dopasowania do określonego rozmiaru szerokości i wysokości
- 5. Ustawianie wartości pola wejściowego
- 6. Jak uzyskać rozszerzenie QLabel do pełnej szerokości?
- 7. Wymuś tekst w celu dopasowania do UILabel w pionie?
- 8. Wtyczka jQuery do dopasowania tekstu do zdefiniowanego elementu szerokości/wysokości
- 9. Rails, walidacji maxLength pola wejściowego
- 10. jquery - sprawdź długość pola wejściowego?
- 11. Zmiana rozmiaru UILabel w celu dopasowania tekstu
- 12. Zmiana pola wejściowego przed przesłaniem
- 13. Blokowanie szerokości pola tekstowego
- 14. Ustawiona wartość pola wejściowego JavaScript
- 15. Pobierz etykietę dla pola wejściowego
- 16. Zmień rozmiar okna w celu dopasowania do zawartości
- 17. Ustawianie obrazu tła divs w celu dopasowania do jego rozmiaru?
- 18. Rozmiar zmiany rozmiaru ramki FONT w celu dopasowania do ramki
- 19. get pola wejściowego z XPath
- 20. Jak wyrównać tekst pola wejściowego w prawo?
- 21. Wartość pola wejściowego JQUERY do zapisania w zmiennej
- 22. Dynamiczna zmiana rozmiaru czcionki wejściowego pola tekstowego w celu wypełnienia wymiarów
- 23. szerokość tbody nie automatycznie rozszerzenie do szerokości stołu
- 24. CSS: Procentowy odstęp między literami w celu pełnego dopasowania do kontenera div
- 25. Przepisywanie w htaccess w celu dopasowania określonych rozszerzeń plików
- 26. Jak do ajax jQuery z nazwą pola wejściowego = "array []"?
- 27. Jak dodać niestandardowy znacznik, a następnie dopasować wartość z jednego pola wejściowego do drugiego pola wejściowego za pomocą polecenia onkeyup?
- 28. jQuery - wybierz związaną elementu etykietę pola wejściowego
- 29. Wyłącz niektóre znaki z pola wejściowego
- 30. Aktywuj pole wejściowe z pola wyboru wejściowego
Musiałem zrobić to samo dla '.tt-podpowiedź', ale to działało dla mnie. – Steve
Musiałem zrobić szerokość kilku dodatkowych klas w 100%. To działało dla mnie '.twitter-typeahead, .tt-hint, .tt-input, .tt-dropdown-menu {width: 100%; } ' –
Wierzę, że' .tt-dropdown-menu' jest teraz '.tt.-menu', więc nowa rzecz to:' .twitter-typeahead, .tt-hint, .tt-input, .tt-menu { szerokość: 100%; } '. Co to za bałagan. – mlissner