我在js文件中定义了一个js变量,如下所示:
onlineUsers.js:
var _onlineUsers=new Array();
然后我将js文件链接到index.html,就像这样
<script type="text/javascript" src="onlineUsersVars.js"></script>
我确定它会在一段时间后得到一个值,因为我已经通过警告检查了它。
但是,当我尝试对另一个html文件执行相同操作时,例如file2.html 然后链接js文件以获取相同的变量 file2.html:
<script type="text/javascript" src="onlineUsersVars.js"></script>
并检查值,该值无效。
任何人都知道我错过了什么?链接到一个页面后,javascript变量“死”吗?如何在许多html页面之间共享相同的全局javascript变量?
答案 0 :(得分:1)
您必须在每个HTML页面上包含脚本(onlineUsers.js
)。并且需要在每个HTML页面上重新实例化变量(_onlineUsers
)。
答案 1 :(得分:0)
是的,如果你从file1.html转到file2.html,即使你在两个文件上都有相同的JS文件,这些值都会清除。将变量从一个页面传递到另一个页面的最佳方法是使用cookie。
答案 2 :(得分:0)
尝试使用HTML5 localStorage存储变量,然后在每次需要时调用它。
function onlineUsers() {
var _onlineUsers=new Array();
localStorage.onlineUsers = _onlineUsers;
}
然后,只要您需要,此值就可用。虽然那是客户端而不是服务器端。