2017-02-17 24 views
0

Я пытаюсь сбросить листовку карту (к первоначальному виду) после нажатия на маркер с помощью:filterAll(); не работает с листком картой

<h5>Location <a class="reset" href="javascript:mapLocation.filterAll(); dc.redrawAll();">reset</a></h5> 

Где mapLocation моя переменная листовки карты. Я использую dc.leaflet.js, чтобы связать карту и данные вместе. Я управляю данным, содержащим данные, с карты буклета. Поэтому, когда карта сбрасывается, все элементы должны отображаться в таблице снова.

Начиная вид: Map starting view

Карта после нажатия пузырьковой # 4: Map after clicking on #4 bubble

Затем нажав на сброс не возвращает его в исходное представление.

Вот подобное использование сброса с с той же проблемой: http://bl.ocks.org/Mbrownshoes/679a255540eb11d16704c44d88314075

Вот мой code

Просто модифицирована мой код из:

<h5>Location <a class="reset" href="javascript:mapLocation.filterAll(); redrawAll();">reset</a></h5> 

Для этого:

<h5>Location <a class="reset" href="javascript:location.reload();">reset</a></h5> 

Это действительно обновляет страницу, так как она сбрасывает dc.filter, это лучший способ сделать это?

+0

Похоже сброса работает хорошо в этом примере; проблема в том, что Франция становится фиолетовой и остается таким образом при первом нажатии. Это та же проблема, и вы также используете choropleth? Различные диаграммы dc.leaflet реализованы по-разному. – Gordon

+0

Я не использую хлороплет, я использую опцию пузырьковой диаграммы dc.leaflet.js: https://plnkr.co/edit/1Vy3bsFUUEMNlQlLtZ9L, когда я обновляю браузер, обновляю карту брошюры до ее первоначального вида. – mutanthumb

ответ

0

Я закончил с использованием:

<h5>Location <a class="reset" href="javascript:location.reload();">reset</a></h5> 

Для перезагрузки всей страницы.

В качестве альтернативы это также работал, выгружена уаг mapLocation с window.mapLocation

window.mapLocation = dc.leafletMarkerChart("#location", groupname)