jQuery's .width()
metoda nie wydaje się uwzględniać paski przewijania. Jest to dla mnie problematyczne, ponieważ chciałbym ustawić szerokość niektórych dzieci równą szerokości ich rodzica. Kiedyś jQuery podobny do następującego:Radzenie sobie z paskami przewijania i jquery .width() metoda
$('#contentDiv').width($('#containerDiv').width())
W tym przykładzie #contentDiv
jest elementem Chciałbym wielkość i chcę, aby ustawić go mieć szerokość #containerDiv
, który jest jego elementem dominującym. Moim problemem jest to, że odcina stronie #contentDiv
, jak widać na this fiddle.
W moim rzeczywisty kod, mam kilka elementów, które ja zaklejające z jQuery, które wszyscy musimy zmieścić się w przewijanej div, więc po prostu ustawienie css od #contentDiv
do 100% nie jest opcją. Jaki jest najlepszy sposób radzenia sobie z szerokościami paska przewijania elementów div w jQuery?
Jest to spowodowane tym, że różne przeglądarki inaczej implementują paski przewijania.IE umieszcza pasek przewijania poza obszarem div (co jest rzeczywiście poprawne zgodnie z dokumentacją standardów), podczas gdy wszystkie inne przeglądarki faktycznie mają pasek przewijania wewnątrz tego obszaru. Po prostu warto o tym pamiętać podczas badania tego obszaru. – krillgar
możliwy duplikat [jquery - jak uzyskać szerokość ekranu bez paska przewijania?] (Http://stackoverflow.com/questions/8339377/jquery-how-to-get-screen-width-without-scrollbar) (użyj 'innerWidth () ')? – fcalderan
jest to trudny temat, ponieważ nie jest spójny we wszystkich przeglądarkach. Niektóre dadzą ci innerwidth, niektóre dadzą ci szerokość za pomocą pasków przewijania. Myślę, że być może będziesz musiał wymyślić rozwiązanie, które jest specyficzne dla każdej przeglądarki, którą planujesz wesprzeć –