Ajuda JS Events

3 respostas
Claudia.pt

Olá a todos!
Preciso de uma pequena ajuda :slight_smile:
Tenho o seguinte código

<span style="left: 237; top: 380; width: 37; height: 15; position: absolute; cursor: hand" 
				onMouseOver="className='visited'" onMouseOut="className='legend'" onClick="getChoose('Caudal AMC')" class="legend">Caudal</span>

<span style="left: 233; top: 395; width: 49; height: 15; position: absolute; cursor: hand"  
 				onMouseOver="className='visited'" onMouseOut="className='legend'" onClick="getChoose('Caudal Acumulado AMC')" class="legend">CaudalAc.</span>

Ou seja, qdo o rato passa sobre a palavra “Caudal”, o tamanho aumenta e qdo o rato sai de cima, volta ao normal.

MAs na verdade queria mais…
Queria tb que qdo eu clicasse em caudal, ele passasse a vermelho e voltasse ao normal qdo clicasse em Caudal Ac. Agora este ultimo é que estaria em vermelho.
Assim o utilizador conseguia ver a ultima propriedade que clicou.

Como faço isso?
Obrigada
Cláudia

3 Respostas

_fs
onMouseOver="this.className='visited'"
onMouseOut="this.className='legend'"
var lastRed;
function paintRed( element ) {
    if( lastRed != null )
        lastRed.style.color = 'black';

    element.style.color = 'red';
    lastRed = element;
}

<span onclick="paintRed( this );">um</span>
<span onclick="paintRed( this );">dois</span>
Claudia.pt

BOA!!
É isso mesmo q eu queria.
Diz-me uma coisa… existe forma de eu através do element obter a string em questão (um ou dois)?

Thanks
CLáudia

_fs

Jeito errado e mais usado:

var s = element.innerHTML;
alert( s );

Jeito correto:

// o primeiro nodo filho do span é um objeto do tipo TextNode
// que tem um atributo "data" que guarda o valor
var s = element.firstChild.data;
alert( s );
Criado 26 de abril de 2006
Ultima resposta 27 de abr. de 2006
Respostas 3
Participantes 2