Jump to content
Fórum Script Brasil
  • 0

quando eu clico no link 2 ou 3 é o 1 que fica verde


marcio.sx
 Share

Question

Gente eu tenho o seguinte script:

<p>Clique no link abaixo e espere 10 segundos para mudar de cor</p> 

<a id="mudarDeCor" href="https://br.answers.yahoo.com" onclick="myFunction()" target="_blank">Clique Aqui</a> <br/><br/>
<a id="mudarDeCor" href="https://br.answers.yahoo.com" onclick="myFunction()" target="_blank">Clique Aqui2</a> <br/><br/>
<a id="mudarDeCor" href="https://br.answers.yahoo.com" onclick="myFunction()" target="_blank">Clique Aqui3</a> <br/><br/>

<script language="javascript">
    function myFunction() {
        document.getElementById("mudarDeCor").style.color = "green";
        setTimeout(function(){
            document.getElementById("mudarDeCor").style.color = "blue";
        }, 10000);
    }
</script>

 

Tem um erro nele, quando eu clico no link 2 ou 3 é o 1 que fica verde. Tem como me ajudar? Quero que quando clicar no 1 ele fique verde quando clicar no 2 o próprio 2 fique ver e assim segue...

Link to comment
Share on other sites

7 answers to this question

Recommended Posts

  • 0

Olá!

Id = identidade

Da mesma forma que se duas pessoas tiverem a mesma identidade vai dar um problema,  elementos html tb!

Cada um deve ter a sua própria id

Link to comment
Share on other sites

  • 0
1 hora atrás, lowys disse:

Olá!

Id = identidade

Da mesma forma que se duas pessoas tiverem a mesma identidade vai dar um problema,  elementos html tb!

Cada um deve ter a sua própria id

eu amigo consegui fazer mais ou menos o que eu quero, o unico problema e que mesmo em tabelas diferentes fica verde todos que tiverem o mesmo id! veja:

<p>Clique no link abaixo e espere 10 segundos para mudar de cor</p> 

<a id="id1" href="https://br.answers.yahoo.com" onclick="myFunction(event)" target="_blank">Clique Aqui</a> <br/><br/>
<a id="id2" href="https://br.answers.yahoo.com" onclick="myFunction(event)" target="_blank">Clique Aqui2</a> <br/><br/>
<a id="id3" href="https://br.answers.yahoo.com" onclick="myFunction(event)" target="_blank">Clique Aqui3</a> <br/><br/>

<script language="javascript">
    function myFunction(s) {
        var id = s.target.id;
        
        document.getElementById(id).style.color = "green";
        setTimeout(function(){
            document.getElementById(id).style.color = "blue";
        }, 10000);
    }
</script>

Link to comment
Share on other sites

  • 0

<script language="javascript">
        function myFunction(e) {
            var id = e.target.id;
            document.getElementById(id).style.color = "#999";
            setTimeout(function(){
                document.getElementById(id).style.color = "blue";
    }, 10000);
}
</script>
      <ol>
        <?php 
            $selecionaColuna1 = mysql_query("SELECT * FROM tabela1");
            $contaColuna1 = @mysql_num_rows($selecionaColuna1);
            
            If($contaColuna1 <= 0){
                echo "<p>Sem link Nesta coluna</p>";
            }else{
                while ($linhaTb = mysql_fetch_array($selecionaColuna1)) {
                    $nome1 = $linhaTb ['nome1'];
                    $link60 = $linhaTb ['link60'];
                    $id = $linhaTb ['id'];

        ?>
                <li><a id="<?php echo $id; ?>" onclick="myFunction(event)" target="_blank" href="<?php echo $link60; ?>"><?php echo $nome1; ?></a></li>
                                    
        <?php } } ?>
    </ol>
    </div>

Link to comment
Share on other sites

  • 0

Olá Marcio! Segundo o W3s, mantenedor do HTML5, ids devem ser iniciadas com characteres (letras) somente depois é que se pode usar números.
Veja em: http://www.w3schools.com/tags/att_global_id.asp
Tente colocar o nome da tabela e um underline antes do número da id, assim:

<?php 
            $selecionaColuna1 = mysql_query("SELECT * FROM tabela1");
            $contaColuna1 = @mysql_num_rows($selecionaColuna1);
            
            If($contaColuna1 <= ){
                echo "<p>Sem link Nesta coluna</p>";
            }else{
                while ($linhaTb = mysql_fetch_array($selecionaColuna1)) {
                    $nome1 = $linhaTb ['nome1'];
                    $link60 = $linhaTb ['link60'];
                    $id = $linhaTb ['id'];

        ?>
                <li><a id="tabela1_<?php echo $id; ?>" onclick="myFunction(event)" target="_blank" href="<?php echo $link60; ?>"><?php echo $nome1; ?></a></li>
                                    
        <?php } } ?>

P.S.

Atualize seu php!

Há mais de 3 anos o php.net, recomenda fortemente que não se use mais as extensões mysql_*

Veja:

mysql_.jpg

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Forum Statistics

    • Total Topics
      149.6k
    • Total Posts
      646.2k
×
×
  • Create New...