Przepełnienie iOS-x (lub pozycja absolutna) powoduje, że przewijanie jest przerywane?

Chcę, aby moja strona była przewijana tylko w pionie. Więc ustawiłemoverflow-x:hidden; do mojego.page-wrapper. Mój.page-wrapper przechowuje dwie bezwzględnie ułożone warstwy jedna na drugiej. Po kliknięciu przycisku górna warstwa przesuwa się na bok (jak wspomnianoposition:absolute;) i sprawia, że ​​strona jest rzeczywiście szersza niż 100% viewport z - więc będzie przewijana w poziomie.

Aby zapobiec ustawieniu przewijania w poziomieoverflow-x:hidden do mojego.page-wrapper.

Jeśli to zrobię, pionowe przewijanie mojej normalnej zawartości jest naprawdę błędne i nie działa poprawnie.

Jakieś pomysły, jak to naprawić?

AKTUALIZACJA

-webkit-overflow-scrolling: touch; wydaje się działać dobrze, ponieważ żaden javascript nie zmienia żadnych wysokości. Zobacz poniższy przykład. To, co tutaj robię, to aktualizacja wysokości ciała do wysokości zawartości drugiej warstwy - więc nie ma pustej przestrzeni przewijania po przesunięciu górnej warstwy w lewo. Podczas przesuwania górnej warstwy z powrotem usuwam attribtestyle (który ustawia wysokość) z ciała. Po wykonaniu tej czynności przewijanie jest ponownie przerywane.

function showInfos(show) {

    if ( show ) {
        $('#videos').addClass('slid');
        $('body').height($('#infos > .content').height());
        $('#page-wrap').addClass('no-overflow');
    } else if ( !show ) {
        $('#videos').removeClass('slid');
        $('#page-wrap').removeClass('no-overflow');
        $('body').removeAttr('style');
    }
}

questionAnswers(4)

yourAnswerToTheQuestion