У меня есть файл HTML и файл JavaScript. В HTML у меня есть мои кнопки с onlclick = "myFunction
, а затем в файле JS у меня есть myFunction
. Однако, когда я пытаюсь запустить приложение в метеоре, он говорит, что функция не определена. Очевидно, все, что связано с функцией, должно быть в файле JS, и я должен удалить onclick = "myFunction
в файле HTML.
Я пробовал много методов, таких как addEventListener
или object.onlclick
, но ничего не работает.
<div class="container">
<div id= "step1">Identify 5 things you see</div>
<button class= "btn" id="button1" onclick= "myFunction(1)">Button1</button>
<button class= "btn" id="button2" onclick= "myFunction(2)">Button2</button>
<button class= "btn" id="button3" onclick= "myFunction(3)">Button3</button>
<button class= "btn" id="button4" onclick= "myFunction(4)">Button4</button>
<button class= "btn" id="button5" onclick= "myFunction(5)">Button5</button>
</div>
<script>
function myFunction(buttonNumber) {
answered["button" + buttonNumber] = true;
var allTrue = Object.keys(answered).every(function(key){ return answered[key] === true });
if (allTrue) {
document.getElementById("button" + numberOfButtons).style.display = "none";
if (compteur == 0){
document.getElementById("step1").innerHTML = "Identify 4 things you see";
} else if (compteur == 1){
document.getElementById("step1").innerHTML = "Identify 3 things you see";
} else if (compteur ==2){
document.getElementById("step1").innerHTML = "Identify 2 things you see";
} else if (compteur ==3){
document.getElementById("step1").innerHTML = "Identify 1 things you see";
}
delete answered["button" + numberOfButtons];
Object.keys(answered).forEach(function(key){ answered[key] = "false" });
numberOfButtons--;
compteur ++;
};
};
}
</script>
Предполагается, что это будет работать следующим образом: при нажатии 5 кнопок одна исчезает, а текст изменяется, а затем при нажатии 4 кнопок происходит то же самое, пока кнопки нет.