AF
Problema ao incluir uma div de legenda
Boa noite a todos.
Estou tentando incluir uma legenda dentro de uma div.
Estou utilizando o código abaixo:
TScript::create("
/*Carrega a legenda */
var legend = L.control({position: 'topright'});
legend.onAdd = function (map) {
var div = L.DomUtil.create('div', 'info legend'),
grades = [0, 100, 300, 500, 1200],
labels = [];
// loop through our density intervals and generate a label with a colored square for each interval
for (var i = 0; i < grades.length; i++) {
div.innerHTML +=
'<i style="background:' + getColor(grades[i] + 1) + '"> ' +
grades[i] + (grades[i + 1] ? '–' + grades[i + 1] + '
' : '+');
}
return div;
}
legend.addTo(mapa);
");
O problema é ao trabalhar no estilo da div abaixo:
div.innerHTML += '<i style="background:' + getColor(grades[i] + 1) + '"> ' +
grades[i] + (grades[i + 1] ? '–' + grades[i + 1] + '
' : '+');
O backgroup fica como string e o código acusa erro.
Agradeço qualquer ajuda.
Atenciosamente,
Ailton Furtado.
Estou tentando incluir uma legenda dentro de uma div.
Estou utilizando o código abaixo:
TScript::create("
/*Carrega a legenda */
var legend = L.control({position: 'topright'});
legend.onAdd = function (map) {
var div = L.DomUtil.create('div', 'info legend'),
grades = [0, 100, 300, 500, 1200],
labels = [];
// loop through our density intervals and generate a label with a colored square for each interval
for (var i = 0; i < grades.length; i++) {
div.innerHTML +=
'<i style="background:' + getColor(grades[i] + 1) + '"> ' +
grades[i] + (grades[i + 1] ? '–' + grades[i + 1] + '
' : '+');
}
return div;
}
legend.addTo(mapa);
");
O problema é ao trabalhar no estilo da div abaixo:
div.innerHTML += '<i style="background:' + getColor(grades[i] + 1) + '"> ' +
grades[i] + (grades[i + 1] ? '–' + grades[i + 1] + '
' : '+');
O backgroup fica como string e o código acusa erro.
Agradeço qualquer ajuda.
Atenciosamente,
Ailton Furtado.
Provavelmente seja problema de escape das aspas. Tente adaptar o exemplo usando a sintaxe heredoc do php:
https://www.php.net/manual/pt_BR/language.types.string.php
Boa noite Nataniel.
Muito obrigado pela sua gentileza. Funcionou e corrigi o problema.
Mas aconteceu outro problema: Uncaught SyntaxError: Unexpected end of input
E ele encontra-se aqui:
var legend = L.control({position: 'topright'});
legend.onAdd = function (map) {
}
legend.addTo(mapa);
Fiz o teste removendo essa parte do código
legend.onAdd = function (map) {
}
e o erro não ocorreu.
Esse código funciona perfeitamente, fora do framework e estou migrando essa parte de sigweb para dentro do framework.
Mais uma vez agradeço sua gentileza.
Caso seja necessário abri outro post, não há problema, o farei.
Ailton Furtado.
Tentou colocar ponto-e-vírgula no fechamento da função?