Помощь - Поиск - Пользователи - Календарь
Полная версия: Html/js
Форум «Всё о Паскале» > Современный Паскаль и другие языки > Ада и другие языки
klem4
Не могу понять почему не работает простейший скрипт, есть кнопка, при каком либо событии, пусть будет onClick должно произойти следующее: Цвет меняется, далее пауза (пара секунд) и цвет меняется еще раз.

Что-то мне подсказывает что задержку я не верно делаю, цвет меняется у меня только один раз:

HTML
<html>
<head>
<title> Simple Script </title>
</head>

<body>

<script language = "javascript">

function DoNothing()
{
// alert('Nothing!');
}

function ChangeColor(input)
{
input.style.color = "Red";

setTimeout(DoNothing(), 10000); // 10000 по идее секунда (пробовал менше (и 0) никакого различия)

input.style.color = "Blue";
}

</script>

<br><br><br><br><br><br>

<form name = "F1" id = "F1">
<p align = "center" > <input type = "button" name = "btn1" align = "center" value = "Ok"
onClick = ChangeColor(btn1)>
</form>

</body>
</html>


Я в этих делах новичок smile.gif Так что еще вопрос, существует какое-нибудь средство для проверки скриптов (хотябы на синтаксические ошибки ) ?
xds
Код
<html>
  <head>
    <title> Simple Script </title>
  </head>
  
  <body>
  
    <script language = "javascript">
    
      function DoSomething()
      {
        F1.btn1.style.color = "Blue";
      }
      
      function ChangeColor(input)
      {
        input.style.color = "Red";
    
    setTimeout("DoSomething()", 2000);  // 2000 мс = 1 с
    
      }
      
    </script>
    
    <br><br><br><br><br><br>
    
    <form name = "F1" id = "F1">
      <p align = "center" > <input type = "button" name = "btn1" align = "center" value = "Ok"
       onClick = ChangeColor(btn1)>
    </form>
    
  </body>
</html>
klem4
Спасибо, не стого бока я правда зашел судя по всему smile.gif

Функция, которая передается в setTimeout может иметь параметры? Это во первых, а вот например если написать такоe:

Код
      function ChangeColor(input)
      {
        input.style.color = "Red";
    
        setTimeout("DoSomething()", 2000);  // 2000 ìñ = 1 ñ
    
        alert("some test");
      }



Сначала выполнится alert и только потом задержка и выполление DoSomething();

Как-то все непоследовательно выходит smile.gif
xds
Не успел написать - говорил по телефону smile.gif

Вызов setTimeout() выполняется практически мгновенно - он просто указывает на то, что надо вызвать функцию через указанное количество миллисекунд. Параметры передавать можно.
klem4
Цитата
он просто указывает на то, что надо вызвать функцию через указанное количество миллисекунд


Так и думал, спасибо ;)

подстава выходит smile.gif

А есть какое-нибуь еще средство "сделать паузу и скушать парочку твикс"

какойнить sleep, delay ... неужели ничего ? Чтобы это была действительно пауза в сценарии
Алена
HTML
<html>
<head>
<title> Simple Script </title>
</head>

<body>

<script language = "javascript">
var global_input;
function DoIt(input) {
global_input.style.color = "blue";
}
</script>

<br><br><br><br><br><br>

<form name = "F1" id = "F1">
<p align = "center" > <input type = "button" id="btn_id" name = "btn" align = "center" value = "Ok"
onClick = "this.style.color='red'; global_input=this; setTimeout('DoIt()', 1500);">
</form>

</body>
</html>
не устроит?
Bokul
Цитата
Так что еще вопрос, существует какое-нибудь средство для проверки скриптов (хотябы на синтаксические ошибки ) ?

Среда разработки
klem4
Спасибо, посмотрю.

Вот пока не могу понять в чем тут трабл, увидел такую штуку, решил реализовать, получилось, в браузере запускается, но после выполнения страничка продолжает "грузиться", а в редакторе просто пишет об ошибке (аттач)

и так волнообразный текст:

Код
<html>
<!-- Волнообразный текст -->

  <head>
    <title> Волнообразный текст </title>
  </head>
  
<body>

  <form name = "F1" id = "idF1">

    <table align = "center" width = "50%">
    
    <tr>
    
      <td><label for "txtInput"> Ваш текст</label>
      <td><input type = "text" id = "txtInput" name = "txtInput" width = "100%">
      
    <tr>
      <td> <input type = "button" name  = "btn1" id = "btn1" value = "Выполнить скрипт" onClick = Convert()>
      
    </table>
  </form>
  
  <script language = "javascript">
  
    function Convert()
    {
      var L = document.F1.txtInput.value.length;
      
      var fSize = 0;
      var desc = false;
      
      for (var i = 0; i < L; i++)
      {
         if (fSize == 7) desc = true;
          else
         if (fSize == 0) desc = false;
        
         fSize = desc ?  --fSize : ++fSize;
        
       document.write(document.F1.txtInput.value.charAt(i).fontsize(fSize));
      }
    }
    
  </script>
  
</body>
</html>
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.