Skip to content
This repository was archived by the owner on Oct 8, 2021. It is now read-only.
This repository was archived by the owner on Oct 8, 2021. It is now read-only.

Page padding should be applied before transition starts #5487

@jhogervorst

Description

@jhogervorst

Issue description

If you navigate to a page with a fixed header using a transition, the page padding is calculated after the transition ends. This causes the page content to move suddenly.

Test page

Here's a test page. I took the latest CSS and replaced all occurrences of "ms;" with "0ms;". Therefore all transitions are ten times slower.

Open the page and click a button. There's a button for each transition. I think "Slide" gives a good view of the problem.

Closely look at the content of the second page when the transition ends. You'll see that it moves down a few pixels.

Platforms/browsers and devices tested

  • Safari 6.0.2 on Mac OS X 10.8.2 (MacBook Pro, Mid 2012).
  • Chrome 24.0.1312.52 on Mac OS X 10.8.2 (MacBook Pro, Mid 2012).
  • Firefox 18.0 on Mac OS X 10.8.2 (MacBook Pro, Mid 2012). More strange things happening during transition here.
  • Safari on iOS 6.0.2 (iPad mini).

jQuery Mobile and jQuery core version used

  • JS Bin test page: jQuery Mobile latest and jQuery 1.8.3.

Other relevant information

The issue does not happen when you navigate to a page stored in the DOM for the second time, because the padding is already known in that situation. Because of that you should restart my test page after trying.

The issue happens also when there's a navbar in the header. The effect is even worse.

It seems like the method _handleAnimationStart on line 108 of js/widgets/fixedToolbar.js never gets called, probably due to wrong events stated on line 92 of the same file.

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions