您的位置:首页 > Web前端 > JavaScript

JS通过事件的传递来间接调用定义在函数中的函数

2012-05-18 22:49 435 查看
<html>
<head>
<title>Test</title>
<script type="text/javascript">
var a = -1;
var b = -1;

function A(){
	document.getElementById("MyButton1").onclick = function B(){
		alert("a = " + a +" ; " + "b = " + b);
	}
}

function C(new_a,new_b){
	a = new_a;
	b = new_b;
	//触发MyButtonn1的单击事件
	document.getElementById("MyButton1").click();
}
</script>
</head>

<body onload = "A();">
	<INPUT type="button" id="MyButton1" style = "display:none" value="button1">
	<INPUT type="button" id="MyButton2" onclick = "C(2,3);" value="button2">
</body>
</html>


把MyButton1设为隐藏,通过点击MyButton2可以直接调用函数A中的函数B。其中的MyButton1的单击事件充当了类似“桥梁”做作用,这样的好处是在执行函数B时保持了原有的上下文环境,当函数A中有很多函数和变量时会比较好用。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐