我有下一个代码:
<td colspan="2" style="padding:5px 0 10px 5px;">
<a class="Option" id="option1" onclick="func1();">1</a>
<a class="Option" id="option2" onclick="func2();">2</a>
<a class="Option" id="option3" onclick="func3();">3</a>
</td>
看起来像是:
当用户在1,2,3之间传递时,Body会更改为fit body(通过javascript函数)。
我希望每个函数(func1
,func2
和func3
)知道用户是否来自其中一个函数:func1/func2/func3
。 (也许警告:“是”或“不是”)。
P.S。用户可以从其他页面到达这些功能..
例如,
在我附加的图片中,如果用户按下2,我希望在func2中,我会在{2}之前知道他在1
。
任何帮助表示赞赏!
答案 0 :(得分:1)
前一段时间我发现这个方法来获取函数名称
<a class="Option" id="option1" onclick="func1(1);">1</a>
<script type="text/javascript">
function func1() {
var functionName = arguments.callee.toString().match(/function ([^\(]+)/)[1]
alert(functionName);
}
</script>
提醒“func1”。
但这不可靠。据我所知,没有标准的方法来获取函数的名称。
答案 1 :(得分:1)
正如pandavenger和deepi所说,我保存了一个全局变量:“came_from”,并且在每个函数的末尾(func1,func2和func3),我通过以下方式保存它:1,2,3 ..
var came_from = 0;
func1() {
if (came_from != 2 && came_from != 3) { do something }
.....
came_from = 1;
}
func2() {
.....
came_from = 2;
}
func3() {
.....
came_from = 3;
}
谢谢大家!
答案 2 :(得分:1)
检查
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<script type="text/javascript" src="http://code.jquery.com/jquery-1.8.3.js"></script>
<style type="text/css">
a{border:1px solid red;cursor:pointer;}
</style>
</head>
<body>
<table>
<tr>
<td>
<a class="Option" id="option1">1</a>
<a class="Option" id="option2">2</a>
<a class="Option" id="option3">3</a>
</td>
</tr>
</table>
<div id="result">teste</div>
<script type="text/javascript">//<![CDATA[
var previous = 'None';
$(document).ready(function() {
$('.Option').click(function(e) {
$('#result').html(previous);
previous = $(this).prop("id");
e.preventdefault;
});
});
//]]>
</script>
</body>
</html>