cari

Rumah  >  Soal Jawab  >  teks badan

javascript - Bagaimana untuk memuatkan fail js sebelum membuka tapak web?

Dan selepas laman web dimuatkan dan dibuka seperti biasa, kod untuk memuatkan js tidak dipaparkan dalam kod halaman web. Bolehkah ini dilakukan? ? ? Selesaikan

曾经蜡笔没有小新曾经蜡笔没有小新2736 hari yang lalu665

membalas semua(4)saya akan balas

  • 大家讲道理

    大家讲道理2017-05-31 10:36:00

    Saya tidak tahu bagaimana penyoal mentakrifkannya sebelum tapak web dibuka?

    Jika anda hanya mahu halaman web memuatkan fail js lebih awal, anda boleh meletakkan rujukan skrip dalam tag kepala.
    Walau bagaimanapun, soalan itu juga memerlukan kod halaman web tidak memaparkan js selepas dibuka. Ini adalah cara saya memahaminya. Dalam kes ini, terdapat dua langkah utama:

    1. Tulis kod js sebaris dalam teg kepala Fungsi utama kod adalah untuk memperkenalkan fail js dan tindakan susulan

    2. Tindakan susulan yang dipanggil adalah untuk mencetuskan acara pemuatan selepas memperkenalkan fail untuk mengalih keluar pengenalan fail daripada dokumen DOM

    Saya hanya akan menyenaraikan demo:

    Sediakan dahulu halaman t.html

    <!DOCTYPE html>
    <html>
    <head>
        <meta charset="UTF-8">
        <title>waterfall</title>
        <script type="text/javascript">
            (function(){
                // 动态加载script
                var script = document.createElement('script');
                var head = document.getElementsByTagName('head')[0];
                // console.log(head);
                // 脚本加载完就移除
                script.onload = function(){
                    console.log('loaded script ready to remove');
                    head.removeChild(script);
                };
                script.src = './t.js';
                console.log('load script');
                // 将script放到head里
                head.appendChild(script);
            })();
        </script>
    </head>
    <body>
        <p id="wrap" class="wrap"></p>
    </body>
    </html>

    Diperkenalkan js: t.js

    (function(){
        console.log('hello i am t');
    })()

    Saya tertanya-tanya adakah ini kesan utama soalan?

    balas
    0
  • ringa_lee

    ringa_lee2017-05-31 10:36:00

    Jika anda ingin meningkatkan kelajuan pemuatan, anda boleh menggunakan cache untuk memuatkan js terlebih dahulu

    balas
    0
  • 世界只因有你

    世界只因有你2017-05-31 10:36:00

    Gunakan pelayan web (seperti nginx) untuk memasukkan kandungan ke dalam halaman?
    Kemudian js ini juga memantau sama ada halaman telah dimuatkan, dan memadam sendiri selepas dimuatkan.

    balas
    0
  • PHP中文网

    PHP中文网2017-05-31 10:36:00

    Cuba letakkan halaman web sebenar dalam iframe dan js di luar iframe?

    balas
    0
  • Batalbalas