das
26-08-2015, 07:42
Ho una figura dove al suo interno trovo dei tag <g> con un ID. Sotto <g> ci sono poi dei path con l'attributo opacity impostato a zero.
Io dovrei riuscire a modificarlo da javascript.
Alterando leggermente la figura riesco a farlo piuttosto bene:
<svg>
....
....
<g id="id1_h" opacity="0" fill="#FFFFFF"><path d="M347.886,273.685c-8.352-5.711-8.352-5.711-8.352-5.711l-9.635-10.788 .... .... ...."/>
...
...
</svg>
Subito dopo nell html uso questo codice:
<script type="text/javascript">
function Colora(elemento) {
var att = document.createAttribute("opacity"); // Create a "class" attribute
att.value = 0.4; // Set the value of the class attribute
elemento.setAttributeNode(att);
var attw = document.createAttribute("fill"); // Create a "class" attribute
attw.value = "#00FFFF"; // Set the value of the class attribute
elemento.setAttributeNode(attw);
}
</script>
E usando:
<button onclick="Colora(id1_h)">Cliccami</button>
Il path da invisibile diventa semitrasparente e quindi funge da evidenziatore di quello che c'è sotto.
Il problema mio è che le figure con cui devo avere a che fare sono così:
<svg>
....
....
<g id="id1_h" ><path opacity="0" fill="#FFFFFF" d="M347.886,273.685c-8.352-5.711-8.352-5.711-8.352-5.711l-9.635-10.788 .... .... ...."/>
...
...
</svg>
Cioè l'attributo da cambiare non è dentro <g> ma dentro tutti i <path> che trovo sotto il <g> con quell'ID.
Qualcuno mi sa dare una mano ?
Grazie
Io dovrei riuscire a modificarlo da javascript.
Alterando leggermente la figura riesco a farlo piuttosto bene:
<svg>
....
....
<g id="id1_h" opacity="0" fill="#FFFFFF"><path d="M347.886,273.685c-8.352-5.711-8.352-5.711-8.352-5.711l-9.635-10.788 .... .... ...."/>
...
...
</svg>
Subito dopo nell html uso questo codice:
<script type="text/javascript">
function Colora(elemento) {
var att = document.createAttribute("opacity"); // Create a "class" attribute
att.value = 0.4; // Set the value of the class attribute
elemento.setAttributeNode(att);
var attw = document.createAttribute("fill"); // Create a "class" attribute
attw.value = "#00FFFF"; // Set the value of the class attribute
elemento.setAttributeNode(attw);
}
</script>
E usando:
<button onclick="Colora(id1_h)">Cliccami</button>
Il path da invisibile diventa semitrasparente e quindi funge da evidenziatore di quello che c'è sotto.
Il problema mio è che le figure con cui devo avere a che fare sono così:
<svg>
....
....
<g id="id1_h" ><path opacity="0" fill="#FFFFFF" d="M347.886,273.685c-8.352-5.711-8.352-5.711-8.352-5.711l-9.635-10.788 .... .... ...."/>
...
...
</svg>
Cioè l'attributo da cambiare non è dentro <g> ma dentro tutti i <path> che trovo sotto il <g> con quell'ID.
Qualcuno mi sa dare una mano ?
Grazie