Elementor Nested Tabs Swiper Drag Fix
Restores drag/swipe on Swiper carousels inside Elementor Nested Tabs after a tab switch (Elementor 4.2.0 – 4.3.4 regression). Self-disables on newer versions.
Install
This is the repository archive. It installs, but the folder name will carry the branch suffix and updates will not flow.
Install straight from GitHub with WP-CLI:
wp plugin install https://github.com/stevekinzey/elementor-swiper-nested-tabs-fix/archive/refs/heads/main.zipRestores drag/swipe on Swiper-based carousels (Loop Carousel, Image Carousel, Nested Carousel, etc.) placed inside Elementor Nested Tabs. Arrows and pagination keep working after a tab switch; drag does not. This plugin fixes that.
Status (2026-11-05): still unfixed upstream as of Elementor Core 4.3.4 / Pro 4.3.2. Regression was introduced between Core 4.1.5 and 4.2.0. Tracked upstream at elementor/elementor#38057.
The bug
Swiper binds its touch/pointer drag listeners once at init to a stored element reference. Nested Tabs' show/hide cycle leaves those bindings stale on every non-initial panel. swiper.update() recalculates layout but never rebinds events, so it can't repair it.
The fix
On elementor/nested-tabs/activate, for each .swiper in the activated panel:
detachEvents()→attachEvents()→update()(cheap, usually enough)- Fallback:
destroy(true, false)and re-init withobserver: true/observeParents: true
A version guard (MAX_BROKEN_VERSION in assets/js/fix.js) makes the plugin a no-op on Elementor versions newer than the last one confirmed broken, so it retires itself once an official fix lands.
Install
Zip (recommended)
- Download the latest zip from Releases
- WordPress → Plugins → Upload Plugin → Activate
Git
cd wp-content/plugins
git clone https://github.com/SteveKinzey/elementor-swiper-nested-tabs-fix.git
Then activate in WordPress.
No plugin? Use the snippet. Paste assets/js/fix.js wrapped in `