2013-08-17 3 views
1
<html> 
    <head> 
     <script language="Javascript"> 
      function changecolor(var c) 
      { 
      document.body.style.background=c; 
      } 
     </script> 
    </head> 
    <body> 
     <table width="300" height="100" align="center" border=2> 
      <tr> 
       <td onmouseout=changecolor("transparent") onmouseover=changecolor("red")>red</td> 
       <td onmouseout=changecolor("transparent") onmouseover=changecolor("green")>green</td> 
       <td onmouseout=changecolor("transparent") onmouseover=changecolor("blue")>blue</td> 
      </tr> 
     </table> 
    </body> 
</html> 

Я не получаю изменение цвета. Может кто-то, пожалуйста, помогите ...! Спасибо заранее.Javascript change color

+0

используйте jsfiddle.net, чтобы показать свой пример – Ankur

+3

функции не вар в них 'функция changecolor (Var с)' РЕКОМЕНДУЕМЫМ be 'function changcolor (c)' – abc123

+2

Вы должны объединить свои операторы onmouseout/onmouseover с помощью ''. То есть 'onmouseout = changecolor (" transparent ")' должно быть 'onmouseout = 'changecolor (" transparent ")'' –

ответ

2

Вы должны написать

function changecolor(c) 

вместо

function changecolor(var c) 

Потому что, когда вы пишете var c в объявлении функции, браузер будет объявить новую переменную в сферу вашей функции. Поэтому, когда вы используете переменную c, она будет возвращена undefined, так как вы не назначили некоторые данные этой переменной.

+0

Почему downvote? Это единственная ошибка –

+0

Возможно, из-за отсутствия объяснений .. почему так .. atleast link .. –

0

В ур функции яваскрипта нет необходимости объявлять тип параметров

так изменить

function changecolor(var c) 

в

function changecolor(c) 

это позволит решить проблему ур.

0
<html> 
<head> 
    <script language="Javascript"> 
     function changecolor(c) 
     { 
      document.body.style.backgroundColor=c; 
     } 
    </script> 
</head> 
<body> 
    <table width="300" height="100" align="center" border=2> 
     <tr> 
      <td onmouseout="changecolor('white')" onmouseover="changecolor('red')">red</td> 
      <td onmouseout="changecolor('white')" onmouseover="changecolor('green')">green</td> 
      <td onmouseout="changecolor('white')" onmouseover="changecolor('blue')">blue</td> 
     </tr> 
    </table> 
</body> 

0

Попробуйте это:

<script language="Javascript"> 
      function changecolor(c)//remove var 
      { 
      document.body.style.background=c; 
      } 
     </script> 
0
<body> 
<table width="300" height="100" align="center" border=2> 
    <tr> 
     <td id="redcolor" onmouseover="change_red()" onmouseout="change_color()">red</td> 
    <td id="greencolor" onmouseover="change_green()" onmouseout="change_color()">green</td> 
     <td id="bluecolor" onmouseover="change_blue()" onmouseout="change_color()">blue</td> 
    </tr> 
</table> 

<script> 
    function change_red() 
     { 
      document.getElementById("redcolor").style.color="red"; 
     } 

    function change_green() 
     { 
    document.getElementById("greencolor").style.color="green"; 
} 

function change_blue() 
{ 
    document.getElementById("bluecolor").style.color="blue"; 
} 

function change_color() 
{ 
document.getElementById("redcolor").style.color="#000"; 
document.getElementById("greencolor").style.color="#000"; 
document.getElementById("bluecolor").style.color="#000"; 
} 
</script> 

</body>