Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Помогите пожалуйста правильно написать скрипт (https://javascript.ru/forum/events/32434-pomogite-pozhalujjsta-pravilno-napisat-skript.html)

raffx 16.10.2012 11:08

Помогите пожалуйста правильно написать скрипт
 
Привет. Помогите плиз разобраться с кодом. Есть такой html:
<a href="#" onclick="showWork(GTL)">GTL</a>


Вот код JS:
function showWork(name){
	alert('work name is '+name);
}

Надо чтобы при клике написал: work name is GTL.
Помогите пожалуйста правильно написать скрипт.

Hekumok 16.10.2012 13:04

ну GTL в кавычки возьмите :)
<a href="#" onclick="showWork('GTL')">GTL</a>
<script>
function showWork(name) {
alert("work name is "+name) ;
return false ;
} ;
</script>

raffx 16.10.2012 14:04

Hekumok,
Спасибо :)

cyber 16.10.2012 14:23

не хватает
return false;

что бы отметить переход по ссылке.

Hekumok 16.10.2012 14:30

cyber, оке :)

raffx 16.10.2012 15:02

cyber, понял, добавлю, спасибо.
А можно ли вдобавок к этому поменять класс тега <a>, с которого делался клик? Вроде должно быть что-то такое
this.className="active";

но чего-то не работает :(

cyber 16.10.2012 15:11

raffx,
<!DOCTYPE HTML>
<html>
  <head> 
  <style>
    .red{
      color:red;
    }
    .green{
      color:green;
    }
    
    </style>
  </head>
  <body>
   
    <a href="#" class="red" >link</a>
    
    <script>

 var link = document.body.children[0];
      
      link.onclick = function () {
      
        this.className = "green";
       
      return false;
      };    


    </script>

  </body>
</html>

lord2kim 16.10.2012 15:13

Цитата:

Сообщение от raffx (Сообщение 210536)
cyber, понял, добавлю, спасибо.
А можно ли вдобавок к этому поменять класс тега <a>, с которого делался клик? Вроде должно быть что-то такое
this.className="active";

но чего-то не работает :(

<a href="#" onclick="alert(this.className); showWork('GTL', this); alert(this.className);">GTL</a>
<script>
function showWork(name, href) {
    href.className = "abc";
    alert("work name is "+name);
    return false;
}
</script>

cyber 16.10.2012 15:24

lord2kim, не очень хорошо писать Js в атрибуте onclick

raffx 16.10.2012 15:27

cyber, вроде также делаю, но не работает.
Прошу прощения за назойливость, не могли бы указать на ошибку в полном коде.
html
<ul><li class="leftmenu" onclick="showWork('gtl')">
	<a class="passive" href="#">GTL</a>
</li>
<li class="leftmenu" onclick="showWork('sotrudnichestvo')">
	<a class="passive" href="#">Сотрудничество</a>
</li>
</ul>


js
function showWork(name){
	var previous=document.getElementsByClassName('active'); 
        for (var i = 0; i < previous.length; i++) { 
            previous[i].className="passive"; 
        }
	this.className = 'active';
}


При клике на ссылку класс должен меняться на active, а при клике на другую ссылку, должен обратно меняться на passive.


Часовой пояс GMT +3, время: 07:40.