Я пытаюсь вызвать функцию-член моего объекта Utilities при нажатии кнопки. Файл JS, содержащий объект загружается в верхней части index.php
страницы:Объект undefined при нажатии
<script type="text/javascript" src="js/utilities.js"></script>
...
И определили кнопку:
<button id="testAJAX" onclick="Utilties.loadSavedGames()">Load Game</button>
Когда я нажимаю, я получаю Utilties is not defined
об ошибке:
var Utilities = {
loadSavedGames : function() {
console.log("Clicked"); //returns Utilties is not defined
},...
Но мне любопытно, почему, если я перезагружу страницу, она сможет вызвать функцию анона. Это говорит о том, что объект Utilties явно загружается при загрузке страницы:
var Utilities = {
doThis : (function() {
console.log("Utilities object loaded"); //runs just fine
})(),
Таким образом, если объект загружается в верхней части страницы index.php
, почему бы onclick
сказать мне объект не определен?
Вы уверены, что 'Утилиты 'доступны в глобальном масштабе? Возможно, попробуйте 'window.Utilities' вместо' var Utilities'. –
Недостаточно информации, чтобы дать ответ, но делает ли utilities.js ссылку на Утилиты на окне? Итак, windows.Utilities? Кажется, это проблема с закрытием JavaScript, которая у вас есть. –