Rumah > Soal Jawab > teks badan
Dan selepas laman web dimuatkan dan dibuka seperti biasa, kod untuk memuatkan js tidak dipaparkan dalam kod halaman web. Bolehkah ini dilakukan? ? ? Selesaikan
大家讲道理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:
Tulis kod js sebaris dalam teg kepala Fungsi utama kod adalah untuk memperkenalkan fail js dan tindakan susulan
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?
ringa_lee2017-05-31 10:36:00
Jika anda ingin meningkatkan kelajuan pemuatan, anda boleh menggunakan cache untuk memuatkan js terlebih dahulu
世界只因有你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.
PHP中文网2017-05-31 10:36:00
Cuba letakkan halaman web sebenar dalam iframe dan js di luar iframe?