OnClick не будет работать в не встроенном JavaScript

javascript html

46 просмотра

1 ответ

56 Репутация автора

Поэтому я слежу за демонстрацией javascript из firefox ( https://developer.mozilla.org/en-US/Learn/Getting_started_with_the_web/JavaScript_basics ), и я практически скопировал и вставил последнюю демонстрацию на сайт.

index.html:

<html>
<head>

    <h1>Hello there</h1>

</head>
<body>
<button>Change user</button>
<script src = "app.js"></script>

</body>
</html>

и app.js:

var myButton = document.querySelector('button');

var myHeading = document.querySelector('h1');

function setUserName() {
var myName = prompt('Please enter your name.');
localStorage.setItem('name', myName);
myHeading.textContent = 'Mozilla is cool, ' + myName;
}

if(!localStorage.getItem('name')) {
setUserName();
} else {
var storedName = localStorage.getItem('name');
myHeading.textContent = 'Mozilla is cool, ' + storedName;
}

myButton.onclick = function() {
setUserName();
}

Я нажимаю кнопку на веб-странице, но ничего не происходит ... Есть предложения?

Автор: Jcfg.J Источник Размещён: 18.07.2016 03:36

Ответы (1)


1 плюс

444 Репутация автора

Решение

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

Вы можете использовать:

document.addEventListener("DOMContentLoaded", function(event) { 
  // add all the JS here so that the DOM is loaded when you 
  // run your selector.
});

Или, если вы собираетесь использовать jQuery, вы можете использовать $(document).ready()функцию

Автор: sethreidnz Размещён: 18.07.2016 03:40
Вопросы из категории :
32x32