Fix Lightbox use with Go theme and Carousel Gallery block #1587
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
The CoBlocks Lightbox works by adding
click
event listeners to document elements. Previous iterations of Lightbox worked by adding a click listener to theimg
elements which were arguably at the bottom of the document hierarchy. Because the event listener was near the bottom of hierarchy we made it possible for events to fire on elements that reside above our selected target. As a result of this bug, the Lightbox for Go theme when using the Carousel Gallery block would not function.This PR changes the listener target from the lowest
img
element to the parentfigure
element of each respective image. This allows the event bubbling to function as expected even if theme styles result in click events firing on the Figure or the Img elements.Screenshots
Types of changes
Minor JavaScript change to use
.closest( 'figure' )
function.How has this been tested?
Tested manually in Chrome, and Firefox.
Tested with and without the Gutenberg plugin active.
Tested with Go, TwentyTwenty, Barebones theme (underscores).
Checklist: