Mapbox markers flashing when using `icon-allow-overlap`Mapbox GeoJSON loaded via local URL: icons not showing popup propertiesMapboxGL Javascript API: displaying popup for all markers on map not working on multiple layersIs there a way to add perspective to mapbox GL markers?Styling MapBox GL MarkersMapbox GL JS cannot see markerHow can I change the Mapbox-gl maki icons color?How to add dynamic markers in mapbox?Mapbox GL JS: Trouble creating hover effects on mouseenter and mouseleave when layers are stacked (z-index)Mapbox do not hide markers on specific Zoom levelAdd url redirect to mapbox icon
Why should I allow multiple IPs on a website for a single session?
Subset of knight's move in chess.
Do electrons really perform instantaneous quantum leaps?
What happens if a caster is surprised while casting a spell with a long casting time?
What does 5d4 x 10 gp mean?
Reusable spacecraft: why still have fairings detach, instead of open/close?
A quine of sorts
Checkmate in 1 on a Tangled Board
Does friction always oppose motion?
What is the meaning of 'shout over' in a sentence exactly?
Why isn't UDP with reliability (implemented at Application layer) a substitute of TCP?
Hard for me to understand one tip written in "The as-if rule" of cppreference
Two palindromes are not enough
Why would Dementors torture a Death Eater if they are loyal to Voldemort?
How can an inexperienced GM keep a game fun for experienced players?
How far can gerrymandering go?
Fully submerged water bath for stove top baking?
Is leaving out prefixes like "rauf", "rüber", "rein" when describing movement considered a big mistake in spoken German?
Avoiding repetition when using the "snprintf idiom" to write text
What election rules and voting rights are guaranteed by the US Constitution?
Journal standards vs. personal standards
"I am [the / an] owner of a bookstore"?
Is my guitar action too high or is the bridge too high?
How do I tell my girlfriend she's been buying me books by the wrong author for the last nine months?
Mapbox markers flashing when using `icon-allow-overlap`
Mapbox GeoJSON loaded via local URL: icons not showing popup propertiesMapboxGL Javascript API: displaying popup for all markers on map not working on multiple layersIs there a way to add perspective to mapbox GL markers?Styling MapBox GL MarkersMapbox GL JS cannot see markerHow can I change the Mapbox-gl maki icons color?How to add dynamic markers in mapbox?Mapbox GL JS: Trouble creating hover effects on mouseenter and mouseleave when layers are stacked (z-index)Mapbox do not hide markers on specific Zoom levelAdd url redirect to mapbox icon
I have a map that's using mapboxgl-js to hide or show map markers based on some criteria.
Hiding the markers is working as expected, but when I want the markers to show again they flash for some milliseconds then disappear again while the map hides labels (street names etc.) on the underlying layer before they show up again.
See this video: https://streamable.com/debcp
See this codepen: https://codepen.io/jakobfuchs/details/VRRgJO
I came to the conclusion that this is caused by setting 'icon-allow-overlap': true
on the marker symbol layer.
Any suggestions how I can keep that setting and avoid the flashing?
The strange thing is that this does not happen 100% of the time but ~95% of the time.
Code samples:
Marker layer:
map.addLayer(
id: 'property-layer',
type: 'symbol',
source: 'properties',
filter: ['!has', 'point_count'],
layout:
'symbol-placement': 'point',
'icon-image': 'marker',
'icon-size': 1,
'icon-anchor': 'bottom',
'icon-allow-overlap': true,
);
Filter code:
const filterToggle = document.getElementById('filterToggle');
filterToggle.addEventListener('change', function(e)
if (openPopup)
openPopup.remove();
openPopup = '';
let properties;
if (this.checked)
properties =
type: "FeatureCollection",
features: features.features.filter((property) => property.properties.availability === 'Available')
else
properties = features;
map.getSource('properties').setData(properties);
);
javascript mapbox mapbox-gl-js mapbox-gl mapbox-marker
add a comment |
I have a map that's using mapboxgl-js to hide or show map markers based on some criteria.
Hiding the markers is working as expected, but when I want the markers to show again they flash for some milliseconds then disappear again while the map hides labels (street names etc.) on the underlying layer before they show up again.
See this video: https://streamable.com/debcp
See this codepen: https://codepen.io/jakobfuchs/details/VRRgJO
I came to the conclusion that this is caused by setting 'icon-allow-overlap': true
on the marker symbol layer.
Any suggestions how I can keep that setting and avoid the flashing?
The strange thing is that this does not happen 100% of the time but ~95% of the time.
Code samples:
Marker layer:
map.addLayer(
id: 'property-layer',
type: 'symbol',
source: 'properties',
filter: ['!has', 'point_count'],
layout:
'symbol-placement': 'point',
'icon-image': 'marker',
'icon-size': 1,
'icon-anchor': 'bottom',
'icon-allow-overlap': true,
);
Filter code:
const filterToggle = document.getElementById('filterToggle');
filterToggle.addEventListener('change', function(e)
if (openPopup)
openPopup.remove();
openPopup = '';
let properties;
if (this.checked)
properties =
type: "FeatureCollection",
features: features.features.filter((property) => property.properties.availability === 'Available')
else
properties = features;
map.getSource('properties').setData(properties);
);
javascript mapbox mapbox-gl-js mapbox-gl mapbox-marker
I don't necessarily know that this is the culprit, but is there a reason you are rewriting your source each time the toggle is used? You might find that a simpler approach would be to leveragesetFeatureState
instead. (see this example: docs.mapbox.com/mapbox-gl-js/example/hover-styles)
– riastrad
May 29 at 20:11
add a comment |
I have a map that's using mapboxgl-js to hide or show map markers based on some criteria.
Hiding the markers is working as expected, but when I want the markers to show again they flash for some milliseconds then disappear again while the map hides labels (street names etc.) on the underlying layer before they show up again.
See this video: https://streamable.com/debcp
See this codepen: https://codepen.io/jakobfuchs/details/VRRgJO
I came to the conclusion that this is caused by setting 'icon-allow-overlap': true
on the marker symbol layer.
Any suggestions how I can keep that setting and avoid the flashing?
The strange thing is that this does not happen 100% of the time but ~95% of the time.
Code samples:
Marker layer:
map.addLayer(
id: 'property-layer',
type: 'symbol',
source: 'properties',
filter: ['!has', 'point_count'],
layout:
'symbol-placement': 'point',
'icon-image': 'marker',
'icon-size': 1,
'icon-anchor': 'bottom',
'icon-allow-overlap': true,
);
Filter code:
const filterToggle = document.getElementById('filterToggle');
filterToggle.addEventListener('change', function(e)
if (openPopup)
openPopup.remove();
openPopup = '';
let properties;
if (this.checked)
properties =
type: "FeatureCollection",
features: features.features.filter((property) => property.properties.availability === 'Available')
else
properties = features;
map.getSource('properties').setData(properties);
);
javascript mapbox mapbox-gl-js mapbox-gl mapbox-marker
I have a map that's using mapboxgl-js to hide or show map markers based on some criteria.
Hiding the markers is working as expected, but when I want the markers to show again they flash for some milliseconds then disappear again while the map hides labels (street names etc.) on the underlying layer before they show up again.
See this video: https://streamable.com/debcp
See this codepen: https://codepen.io/jakobfuchs/details/VRRgJO
I came to the conclusion that this is caused by setting 'icon-allow-overlap': true
on the marker symbol layer.
Any suggestions how I can keep that setting and avoid the flashing?
The strange thing is that this does not happen 100% of the time but ~95% of the time.
Code samples:
Marker layer:
map.addLayer(
id: 'property-layer',
type: 'symbol',
source: 'properties',
filter: ['!has', 'point_count'],
layout:
'symbol-placement': 'point',
'icon-image': 'marker',
'icon-size': 1,
'icon-anchor': 'bottom',
'icon-allow-overlap': true,
);
Filter code:
const filterToggle = document.getElementById('filterToggle');
filterToggle.addEventListener('change', function(e)
if (openPopup)
openPopup.remove();
openPopup = '';
let properties;
if (this.checked)
properties =
type: "FeatureCollection",
features: features.features.filter((property) => property.properties.availability === 'Available')
else
properties = features;
map.getSource('properties').setData(properties);
);
javascript mapbox mapbox-gl-js mapbox-gl mapbox-marker
javascript mapbox mapbox-gl-js mapbox-gl mapbox-marker
edited Mar 25 at 18:41
Jakob Fuchs
asked Mar 25 at 15:40
Jakob FuchsJakob Fuchs
1812 gold badges2 silver badges11 bronze badges
1812 gold badges2 silver badges11 bronze badges
I don't necessarily know that this is the culprit, but is there a reason you are rewriting your source each time the toggle is used? You might find that a simpler approach would be to leveragesetFeatureState
instead. (see this example: docs.mapbox.com/mapbox-gl-js/example/hover-styles)
– riastrad
May 29 at 20:11
add a comment |
I don't necessarily know that this is the culprit, but is there a reason you are rewriting your source each time the toggle is used? You might find that a simpler approach would be to leveragesetFeatureState
instead. (see this example: docs.mapbox.com/mapbox-gl-js/example/hover-styles)
– riastrad
May 29 at 20:11
I don't necessarily know that this is the culprit, but is there a reason you are rewriting your source each time the toggle is used? You might find that a simpler approach would be to leverage
setFeatureState
instead. (see this example: docs.mapbox.com/mapbox-gl-js/example/hover-styles)– riastrad
May 29 at 20:11
I don't necessarily know that this is the culprit, but is there a reason you are rewriting your source each time the toggle is used? You might find that a simpler approach would be to leverage
setFeatureState
instead. (see this example: docs.mapbox.com/mapbox-gl-js/example/hover-styles)– riastrad
May 29 at 20:11
add a comment |
0
active
oldest
votes
Your Answer
StackExchange.ifUsing("editor", function ()
StackExchange.using("externalEditor", function ()
StackExchange.using("snippets", function ()
StackExchange.snippets.init();
);
);
, "code-snippets");
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "1"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55341462%2fmapbox-markers-flashing-when-using-icon-allow-overlap%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
0
active
oldest
votes
0
active
oldest
votes
active
oldest
votes
active
oldest
votes
Is this question similar to what you get asked at work? Learn more about asking and sharing private information with your coworkers using Stack Overflow for Teams.
Is this question similar to what you get asked at work? Learn more about asking and sharing private information with your coworkers using Stack Overflow for Teams.
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55341462%2fmapbox-markers-flashing-when-using-icon-allow-overlap%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
I don't necessarily know that this is the culprit, but is there a reason you are rewriting your source each time the toggle is used? You might find that a simpler approach would be to leverage
setFeatureState
instead. (see this example: docs.mapbox.com/mapbox-gl-js/example/hover-styles)– riastrad
May 29 at 20:11