-4

コード:

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 を含めました。

4

6 に答える 6

22
    <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で見つかりました。彼は別の質問に投稿しました

于 2012-10-12T23:09:01.827 に答える
3

全体にクロージャーを追加してみてください。

(function($){

   // do stuff.... 

})(jQuery);

これにより、呼び出す必要がなくなり、他のライブラリと競合しない$(document).ready()ようにすることができます。終了タグ$の直前にあることを確認してください。</body>

于 2012-10-12T23:00:31.080 に答える
0

これを使って:

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

また

window.onload = function() {
    /* your code */
}
于 2015-02-16T16:12:15.793 に答える