mirror of
https://github.com/ionic-team/ionic-framework.git
synced 2025-08-18 11:17:19 +08:00
fix(ios): properly animate content when navigating from a tabbed page (#20918)
fixes #20912
This commit is contained in:
@ -386,12 +386,18 @@ export const iosTransitionAnimation = (navEl: HTMLElement, opts: TransitionOptio
|
|||||||
|
|
||||||
// setup leaving view
|
// setup leaving view
|
||||||
if (leavingEl) {
|
if (leavingEl) {
|
||||||
|
|
||||||
const leavingContent = createAnimation();
|
const leavingContent = createAnimation();
|
||||||
const leavingContentEl = leavingEl.querySelector(':scope > ion-content');
|
const leavingContentEl = leavingEl.querySelector(':scope > ion-content');
|
||||||
|
const leavingToolBarEls = leavingEl.querySelectorAll(':scope > ion-header > ion-toolbar');
|
||||||
|
const leavingHeaderEls = leavingEl.querySelectorAll(':scope > ion-header > *:not(ion-toolbar), :scope > ion-footer > *');
|
||||||
|
|
||||||
|
if (!leavingContentEl && leavingToolBarEls.length === 0 && leavingHeaderEls.length === 0) {
|
||||||
|
leavingContent.addElement(leavingEl.querySelector(':scope > .ion-page, :scope > ion-nav, :scope > ion-tabs')!); // REVIEW
|
||||||
|
} else {
|
||||||
|
leavingContent.addElement(leavingContentEl!); // REVIEW
|
||||||
|
leavingContent.addElement(leavingHeaderEls);
|
||||||
|
}
|
||||||
|
|
||||||
leavingContent.addElement(leavingContentEl!); // REVIEW
|
|
||||||
leavingContent.addElement(leavingEl.querySelectorAll(':scope > ion-header > *:not(ion-toolbar), :scope > ion-footer > *'));
|
|
||||||
rootAnimation.addAnimation(leavingContent);
|
rootAnimation.addAnimation(leavingContent);
|
||||||
|
|
||||||
if (backDirection) {
|
if (backDirection) {
|
||||||
@ -445,7 +451,6 @@ export const iosTransitionAnimation = (navEl: HTMLElement, opts: TransitionOptio
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
const leavingToolBarEls = leavingEl.querySelectorAll(':scope > ion-header > ion-toolbar');
|
|
||||||
leavingToolBarEls.forEach(leavingToolBarEl => {
|
leavingToolBarEls.forEach(leavingToolBarEl => {
|
||||||
const leavingToolBar = createAnimation();
|
const leavingToolBar = createAnimation();
|
||||||
leavingToolBar.addElement(leavingToolBarEl);
|
leavingToolBar.addElement(leavingToolBarEl);
|
||||||
|
Reference in New Issue
Block a user