Przykład kod tutaj: http://pastebin.com/95z3pftQpoziome przewijanie nie działa z urządzeń width = szerokość iscroll
Próbuję stworzyć stronę mobilną ze stałym nagłówku, a sekcja „content”, która zostanie wypełniona zewnętrzny (odkażane ale w inny sposób arbitralny) HTML. Muszę użyć iscroll
lub czegoś podobnego, ponieważ potrzebuję obsługi przewijania pionowego/poziomego i powiększania, który nie ma natywnego odpowiednika.
Problem polega na tym, że w mobilnej wersji Safari mobilne Safari zmienia rozmiar wszystkich elementów blokowych na szerokość ekranu, niezależnie od szerokości ich zawartości, chyba że mają określoną szerokość. iscroll
następnie analizuje szerokość kontenera (czyli szerokość ekranu) i nie ma świadomości, że jest więcej treści do przewijania w poziomie. W tym przykładzie obliczona szerokość dla div#container
na moim iPhonie wynosi 290px, ale obliczona szerokość dla table#really-wide-content
wynosi 1000px.
Czy można w jakiś sposób wyłączyć efekty dyrektywy meta viewport w obrębie jednego elementu div na stronie? Zauważ, że nie mogę z góry wiedzieć, jak szeroka jest zawartość lub jaka jest jej struktura HTML, chociaż w razie potrzeby mogę programowo modyfikować style śródliniowe.
Skończyło się na ustawieniu szerokości elementu bezpośrednio, chociaż to rozwiązanie może być czystsze. Nie znam szerokości a priori (przyczyny problemu), ale później dowiedziałem się o element.scrollWidth. https://developer.mozilla.org/en-US/docs/DOM/element.scrollWidth – RecursivelyIronic
Czy znalazłeś działające rozwiązanie? – JSuar
Tak. scrollWidth było dokładnie tym, czego szukałem. – RecursivelyIronic