为什么两个阶段都没有变化:http://jsfiddle.net/WH7Kf/43/
function phase_switch(){
var phase;
clicker = document.getElementById("click");
phase=1
switch (phase) {
case 1:
clicker.onclick = do_this;
break;
case 2:
clicker.onclick = do_that;
break;
}
function do_this (){
alert("this");
phase==2;
}
function do_that (){
alert("that");
phase==1;
}
}
window.addEventListener("load", phase_switch());
如您所知,第一阶段是唯一触发的阶段。为什么第二阶段不触发?
最佳答案
您可以更简单地做到这一点:
var clicker = document.getElementById("click");
clicker.onclick = do_this;
function do_this (){
alert("this");
clicker.onclick = do_that;
}
function do_that (){
alert("that");
clicker.onclick = do_this;
}
http://jsfiddle.net/Ncz7w/
关于javascript - 如何使用javaScript进行相移?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23485965/