почему переменные объявлены вне функции null? - PullRequest
1 голос
/ 15 декабря 2010

Я сделал это, используя mootools:

$("fox").addEvent("click", function(){
alert("clicked");
});

и HTML:

<p id="fox">A</p>

Теперь, если я попробую это здесь http://jsfiddle.net/5uJ54/3/, это будет работать, но если я попробую это в браузере и это весь код, которого нет, я получу это в firebug:

$("fox") is null

и в chrome он тоже не работает.

почему это происходит? Я также попытался поместить все в функцию, но она все еще не работает.

Ответы [ 3 ]

7 голосов
/ 15 декабря 2010

Если вы попытаетесь выбрать свой элемент до того, как документ будет готов, вы получите нулевое значение.

У вас есть песочница JSFiddle, настроенная для запуска после загрузки документа.

Вчтобы получить код для работы с вашим документом, вы можете прослушать событие MooTools, которое будет запущено после того, как документ будет готов: http://mootools.net/docs/core/Utilities/DOMReady

Ваш пример будет выглядеть примерно так:

window.addEvent('domready', function() {
    $("fox").addEvent("click", function(){
        alert("clicked");
    });
});
0 голосов
/ 15 декабря 2010

Поскольку вы нигде не включали библиотеку JavaScript mootools?

0 голосов
/ 15 декабря 2010

Вы уверены, что mootools загружается, и вы помещаете JavaScript в какое-то событие domready?(Не уверен, что это за версия mootools).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...