Javascript 一个div按钮,每次新的点击都会触发多个功能
我试图让一个div框作为多个功能的主按钮;而这些功能将相继启动;但每次新点击。例如,单击=函数激发。单击=行中的下一个函数,以此类推。目前我有以下内容;这很好,但它不是在编码时连续启动函数,而是根据需要每次单击;一个接一个我在“”的困境现场演示 那么如何创建一个按钮和30个函数,每次单击都会调用这些按钮和函数。如果定义了函数,它将调用该函数,否则它将提醒单击编号? 我想试试这个:Javascript 一个div按钮,每次新的点击都会触发多个功能,javascript,jquery,Javascript,Jquery,我试图让一个div框作为多个功能的主按钮;而这些功能将相继启动;但每次新点击。例如,单击=函数激发。单击=行中的下一个函数,以此类推。目前我有以下内容;这很好,但它不是在编码时连续启动函数,而是根据需要每次单击;一个接一个我在“”的困境现场演示 那么如何创建一个按钮和30个函数,每次单击都会调用这些按钮和函数。如果定义了函数,它将调用该函数,否则它将提醒单击编号? 我想试试这个: var a1_Events = [function1, function2, function3, function
var a1_Events = [function1, function2, function3, function4, function5, function6, function7, function8];
$('#area1').click(function () {
if (a1_Events.length > 0)
{
var tfunc = a1_Events.shift();
tfunc();
}
else
{
// all functions have been executed
}
});
这段代码在执行时从数组中删除每个函数,直到函数结束。您仍然需要原始代码中的所有函数声明。您可以根据按钮/div的点击次数,使用
开关或if
语句简化代码。每一个案例都会控制你的行为,激发你的功能,无论什么
$('button').click(function(){
++funcNum;
switch(funcNum){
case 1:
alert('This is click ' + funcNum);
break;
下面是一个小提琴示例-您也可以尝试一下:
$(document).ready(function () {
var a1_Events = function1,
a1_c = 0;
function function1() {
a1_Events=function2;
alert('Click 1!');
}
function function2() {
a1_Events=function3;
alert('Click 2!');
}
function function3() {
a1_Events=function4;
$("#area1").hide();
$("#area2").show();
alert('Click 3!');
}.... so on
所以,这似乎令人振奋!如何将当前的一些函数压缩为这种格式?对于每种情况,您都可以添加一个函数调用-case1:function1();-或者,如果功能所做的只是显示一个警报,只需将逻辑移到案例中,如答案所示。这里有一个例子-
$(document).ready(function () {
var a1_Events = function1,
a1_c = 0;
function function1() {
a1_Events=function2;
alert('Click 1!');
}
function function2() {
a1_Events=function3;
alert('Click 2!');
}
function function3() {
a1_Events=function4;
$("#area1").hide();
$("#area2").show();
alert('Click 3!');
}.... so on