<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title></title>
<script src="http://code.jquery.com/jquery-1.11.3.min.js"></script>
<script src="assets/init.js"></script>
</head>
<body>
<a href="#list">list</a>
<a href="#edit">edit</a>
<div id="content"></div>
</body>
</html>
$(function() {
$(window).on('hashchange', function() {
var html = window.location.hash.substring(1);
$('#content').load(html + '.html', function() {
$.getScript('assets/' + html + '.js');
});
});
});
这是我通过哈希代码使用ajax加载文件的方式,我曾经使用script src
将JavaScript放在这些加载的文件中,但是会收到警告。
Synchronous XMLHttpRequest on the main thread is deprecated
这就是为什么我在加载html后改变加载相关脚本文件的方式,但是如果我加载更多的html页面,我很想知道它会使用越来越多的内存。
答案 0 :(得分:0)
Javascript使用自动垃圾收集,这意味着它可以将任何可以访问的内容保存在内存中,并自动清除不可能的对象和函数。通过在HTML文件中使用<script>
标记或使用$.getScript()
动态地静态加载它们的方式并不重要。