<script type="text/javascript>
var x = 0; //this occurs in the beginning of the page.
$("#button").onclick{
x = 1;
}
</script>
假设变量“x”变为 1。然后用户点击一个链接。当用户点击“返回”时,x 是 0 还是 1?
<script type="text/javascript>
var x = 0; //this occurs in the beginning of the page.
$("#button").onclick{
x = 1;
}
</script>
假设变量“x”变为 1。然后用户点击一个链接。当用户点击“返回”时,x 是 0 还是 1?
正如另一个问题中所详述的,这个问题的真正答案是它取决于浏览器。
在 Firefox 和 Opera 中,下面的页面会保留1
ifSet x被点击,链接被点击,然后返回按钮被按下的状态。但是,在 Chrome 和 IE6 中,页面将被重新加载,并且x
值为0
.
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js"></script>
<input type="button" id="button" value="Set x">
<input type="button" id="check-x" value="Check x">
<a href="http://www.stackoverflow.com">Click Me</a>
<script>
var x = 0;
$("#button").click(function(){
x = 1;
});
$("#check-x").click(function(){
alert(x);
});
</script>
会的0
。浏览器不会在页面加载之间缓存 Javascript 变量的状态。
在 Firefox 等浏览器中并非如此。请参阅特雷的回答。