Вызов функции по кнопке [требует правки]

297
12 июня 2017, 23:58

Как вызвать функцию по нажатию кнопки?

<!DOCTYPE html>
<html>
    <head>
    </head>
    <body>
    <script type="text/javascript" src="game.js"></script>
    <button id="thu" OnClick="rand (1, 2)">GAME</button>
    </body>
</html>

js:

'use strict'
alert ("You win")
function rand (1, 2)
var rand = min + Math.floor(Math.random() * (max + 1 - min));
if (rand == 2){
alert('You win!');
}
else{ 
alert ('you lose!')
}
Answer 1

Вот пример вызова функции по нажатию:

function myFunction() { 
//берём элемент с id = demo и записываем в него дату и время 
    document.getElementById('demo').innerHTML=Date(); 
}
<button onclick="myFunction()">Получить дату</button> 
<p id="demo"></p>

Answer 2

Для этого есть миллион вариантов:

№1

Просто написать onClick как атрибут у нужного элемента:

alert ("You win") 
function rand (min, max){ 
   var rand = min + Math.floor(Math.random() * (max + 1 - min)); 
   if (rand == 2){ 
      alert('You win!');} 
else{  
      alert ('you lose!');} 
}
<button id="thu" OnClick="rand (1,2)">GAME</button>

№2

addEventListener – мощь:

alert ("You win"); 
function rand (min, max){ 
   var rand = min + Math.floor(Math.random() * (max + 1 - min)); 
   if (rand == 2){ 
      alert('You win!');} 
else {  
      alert ('you lose!');} 
} 
 
document.getElementById("thu").addEventListener("click", function(){rand(1,2)}, false);
<button id="thu">GAME</button>

№3

.onclick прямо в скрипте:

alert ("You win"); 
function rand (min, max){ 
   var rand = min + Math.floor(Math.random() * (max + 1 - min)); 
   if (rand == 2){ 
      alert('You win!');} 
else {  
      alert ('you lose!');} 
} 
 
document.getElementById("thu").onclick = function(){ 
   rand(1,2); 
};
<button id="thu">GAME</button>

№4

Вариант с использованием jQuery:

alert ("You win"); 
function rand (min, max){ 
   var rand = min + Math.floor(Math.random() * (max + 1 - min)); 
   if (rand == 2){ 
      alert('You win!');} 
else {  
      alert ('you lose!');} 
} 
 
$("#thu").click(function(){ 
  rand(1,2); 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script> 
<button id="thu">GAME</button>

READ ALSO
Зациклить вывод индекса в массиве JavaScript

Зациклить вывод индекса в массиве JavaScript

Помогите пожалуйста дописать js код, как зациклить вывод индекса массива, чтобы он начинался с "первого слова", а когда доходил до "третьего",...

302
Рассылка на сайте. Как защитится от скриптов, которые будут беспрерывно добавлять адреса

Рассылка на сайте. Как защитится от скриптов, которые будут беспрерывно добавлять адреса

Обычная почтовая рассылкаПользователь вводит свое имя и почту на сайте и ему приходят уведомления о новых новостях

229
JS не видит знак [требует правки]

JS не видит знак [требует правки]

Нужно с помощью цикла вывести чётные числа с 2 до 10

214