Estou usando o exemplo interativo de cloropata para leaflet.js
Eu descobri como fazer com que cada um dos meus polígonos adicione uma contagem contínua de valores na parte inferior da página após o clique em cada polígono.
Ao clicar em um polígono selecionado pela segunda vez, ele remove seu valor do registro em execução.
Eu gostaria de representar isso visualmente como uma mudança de cor de preenchimento dos polígonos no mapa.
Aqui está o meu código até agora (javascript com PHP incluído): (incluí comentários no meu código para explicar o que estou tentando fazer. Novamente, qualquer ajuda seria muito apreciada)
function addUp(num, x)
{
<?php
// begin php code
$places = $db->query("SELECT boundary_id, boundary_name FROM boundaries WHERE
boundary_state= '$thatstate'");
while($row = $places->fetch_object()) {
//end php code ?>
//begin javascript
if (x == "List<?php echo $row->boundary_name ?>" && List<?php echo $row->boundary_name ?> == 1) {
temp = document.theForm.ttl.value;
tempo = parseInt(temp);
numo = parseInt(num);
nwTemp = tempo + numo;
document.theForm.ttl.value = nwTemp;
geojson.setStyle({fillColor: 'blue'}); // I want to set color to blue to show highlighted
List<?php echo $row->boundary_name ?> = 0;
return List<?php echo $row->boundary_name ?>;
}
if (x == "List<?php echo $row->boundary_name ?>" && List<?php echo $row->boundary_name ?> == 0) {
temp = document.theForm.ttl.value;
tempo = parseInt(temp);
numo = parseInt(num);
nwTemp = tempo - numo;
document.theForm.ttl.value = nwTemp;
// I want to reset color of polygon if deselected (this would be the default)
geojson.resetStyle;
List<?php echo $row->boundary_name ?> = 1;
}
}
Respostas:
Você pode alterar a cor de preenchimento de um polígono com o
setStyle
método (herdado de Path ).Se você está tendo dificuldades para exibir o geojson corretamente, consulte os documentos do Leaflet GeoJSON .
fonte
Há também esse problema que eu tropecei. Não posso reivindicá-lo como meu, mas você pode classificar os objetos de opções via
event.target.options
ou até definir o atributo de cor para um evento de destino viaevent.target.setAttribute()
fonte