2016-01-12 3 views
1

Я работаю над динамической html-страницей с JavaScript, и я хочу автоматически запускать функцию без использования onclick, и я хочу выполнить ее с задержкой.Как я могу запустить функцию автоматически на странице html?

Я пробовал setTimeout(), но он не работал должным образом.

Как я могу преобразовать код ниже, чтобы запустить function updateSliderValue() автоматически с задержкой, но без кнопки?

<!--creating a container for the input box--> 
<div><button onclick="updateSliderValue();">Set value</button></div> 

код:

} 
     function updateSliderValue() { 
      slider = widget.getByName("Slider1"); 
      slider.setValue(); 
     } 

    </script> 
</head> 
<body> 
<div style="clear: both; margin-top: 40px;"></div> 
<div class="cell"> 
     <div class="container" style="height: 100px;"> 
      <div class="widget" style="height: 100%;" id="root"> 
      </div> 
     </div> 
    </div> 
    <!--creating a container for the input box--> 
    <div><button onclick="updateSliderValue();">Set value</button></div> 


</body> 
</html> 

спасибо вам большое за ваши усилия и ваше время, но я не знаю, где поместить код, который вы дали мне.

+0

должен ли он работать при загрузке страницы? – gurvinder372

+0

«Я попробовал setTimeout(), но он не работал должным образом». - Ну, это инструмент для использования. Мы не можем сказать, почему ваша попытка использовать его не работала должным образом, потому что (а) вы не показали нам свою попытку и (б) вы не сказали нам, как поведение, которое вы получили, отличается от того, что вы ожидали. – Quentin

+0

@Quentin - _expected_ был одним из моих вкладов в редактирование. Он просто сказал: «setTimout не работает» - тот же эффект, хотя :) – mplungjan

ответ

2
function updateSliderValue() { 
    //work 
} 

(function() { 
    setTimeout(updateSliderValue,1000); 
})(); 

или , когда страница должна быть загружена, а затем ниже

$(function() { 
    setTimeout(updateSliderValue,1000); 
}); 
+0

Примечание: первый код начнет таймаут сразу же, когда код будет запущен. Второй будет ждать загрузки страницы – mplungjan

+0

да, просто хотел дать ему оба варианта. он ничего не упоминал о загрузке страницы, но да, я должен упомянуть об этом в своем ответе – Oxi

+0

@mplungjan: мой ответ обновлен, спасибо – Oxi

0

Для запуска кода на странице загрузки, вы можете использовать функцию window.onload:

window.onload = function() { 
    updateSliderFunction(); 
}; 

Или вы можете использовать $ (документ) .ready для Jquery решения:

$(document).ready(function(){ 
    updateSliderFunction(); 
}); 
Смежные вопросы