我正在为全局变量赋值,但是,这在函数内部不起作用,我正在为函数内部的全局变量赋值,我在函数外部显示该值。但是,价值不会到来。有什么帮助吗?
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>eq demo</title>
<style>
div, .sectiontitle {
width: 60px;
height: 60px;
margin: 10px;
float: left;
border: 2px solid blue;
}
.blue {
background: yellow;
}
</style>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
</head>
<body>
<ul class="mainnav" id="mainnav1">
<li><a href="/Home.aspx"><span>Home</span></a></li>
<li><a href="/Test-Orders/Home.aspx"><span>Test orders</span></a></li>
<li><a href="/Access-Arrangements/Home.aspx"><span>Access arrangements</span></a></li>
<li><a href="/Pupils/Home.aspx"><span>Pupil registration</span></a></li>
<li><a href="/Teacher-Assessment/Home.aspx" class="active"><span>Teacher assessment</span></a></li>
<li><a href="/Pupil-results/Home.aspx?stage=2"><span>Pupil results</span></a></li>
<li><a href="/Phonics/Home.aspx"><span>Phonics screening check</span></a></li>
</ul>
<script>
// this is a global variable
globalVar = "";
$(function() {
$("#mainnav1 li a").click(function() {
globalVar = $(this).find('span').text();
alert(globalVar); //here, the value is coming
});
alert(globalVar); //here, the value is not coming, i need value of global variable
});
</script>
</body>
</html>
答案 0 :(得分:2)
一切都很好。您正在设置globalVar="";
,因此当页面加载并运行alert(globalVar);
时,它会显示为空白。当您有点击事件时,它会更改globalVar
。但是,它不会重新运行其他呼叫。这是一次性交易。如果您创建另一个钩子来查看globalVar
值,您将看到。
这是一个小提琴:http://jsfiddle.net/0qxbtva5/