$ (document) .ready () не работает

Код:

var names = [
    'Abstract',
    'Animals',
    'Beach',
    //etc. (removed because it was too long)
    'Volcano'
];

var links = [
    'http://i.imgur.com/MFkuQ.jpg',
    'http://i.imgur.com/QEt72.png',
    'http://i.imgur.com/nmrqv.jpg',
    //etc. (removed because it was too long)
    'http://i.imgur.com/7uy15.png'
];

$(document).ready(function() {
    alert('test');
    for (i = 0; i < names.length; i++) {
        var row = document.createElement('tr');
        var col = document.createElement('td');
        col.appendChild(document.createTextNode(names[i]));
        row.appendChild(col);
        document.getElementById('imagenametable').appendChild(row);
    }
});

function expandbar(s) {
    resetbars();
    $('#' + s).show('slow');
}
function resetbars() {
    for (i = 1; i <= 3; i++) {
        $('#sec' + i).hide('slow');
    }
}

$(document).ready()Не работает; Я не получаю предупреждение, которое говорит «тест», когда моя страница загружается. Помогите?

Я включил jQuery.

javascript,jquery,

-4

Ответов: 4


18 голосов принято
    <script type="text/javascript" src="project.js"></script>
    <script type="text/javascript" src="http://code.jquery.com/jquery.min.js"></script>

должно быть:

    <script type="text/javascript" src="http://code.jquery.com/jquery.min.js"></script>
    <script type="text/javascript" src="project.js"></script>

Сценарий должен быть загружен ПОСЛЕ jQuery.

Я нашел этот код в http://pastebin.com/raw.php?i=YeZ77WNr, который он опубликовал в другом вопросе


3

Попробуйте добавить закрытие всего:

(function($){

   // do stuff.... 

})(jQuery);

При этом вам не нужно звонить, $(document).ready()и вы убедитесь, что вы $не конфликтуете с какой-либо другой библиотекой. Просто убедитесь, что он находится прямо перед закрывающим </body>тегом.


1

Он не будет работать, если jquery неправильно включен или есть некоторая ошибка в вашем javascript-коде. [в том числе в любых js-файлах]

$(document).ready(function() {
$("#q").keyup(function (e) {
    if(e.keyCode == 13) 
        alert('in');
});

});

Он не работал, так как была некоторая ошибка в одном из файлов js, которые я включил в голову.

Решение? Непосредственно используйте свой код, если у вас уже загружен DOM. Или поместите его там, где он может получить доступ к DOM [в нижнем колонтитуле]

<script>
$("#q").keyup(function (e) {
    if(e.keyCode == 13) 
        alert('in');
});
</script>

0

Использовать это:

jQuery(function($) {  })(jQuery);

или

window.onload = function() {
    /* your code */
}
JavaScript, JQuery,
Похожие вопросы