javascript - 如何让按钮每次单击时调用不同的功能?
问题描述
每次单击按钮时如何使按钮调用不同的功能?
<button id="OpenGoogle">
Open Google, facebook, instagram
</button>
我有 3 个函数,我想用同一个按钮调用它们,就像这样:
第一次点击通话func1()
,
第二次点击通话func2()
,
第三次点击通话func3()
,
function func1(){
window.open("https://www.gmail.com");
}
function func2(){
window.open("https://www.facebook.com");
}
function func3(){
window.open("https://www.instagram.com");
}
解决方案
function func1(){
console.log("goo");
}
function func2(){
console.log("fac");
}
function func3(){
console.log("insta");
}
const btn = document.querySelector("#OpenGoogle");
funcs = [func1, func2, func3];
let i = 0;
btn.addEventListener("click", e => {
funcs[i]();
i++;
if (i >= funcs.length) i = 0;
});
<button id="OpenGoogle">
Open Google, facebook, instagram
</button>
推荐阅读
- scikit-learn - RobustScaler partial_fit() 类似于 MinMaxScaler 或 StandardScaler
- asp.net - 从控制器调用正确的方法(MVC,RAZOR)
- android - 无法从真正的 Android 设备访问 Node.js 的 IP 地址
- matplotlib - 使用 Mayavi 3D 绘图将轴设置为半对数
- python - 如何将元组列表写入excel
- android - 如何在 YouTubePlayer 中以最小的播放器样式更改颜色加载器?
- angular - Angular - 错误 TS2345:“NgForm”类型的参数不可分配给“Ussdthirdpartyapp”类型的参数
- javascript - 花式滑块密码笔
- excel - 我无法将数据转换为适当的格式
- java - TextToSpeech 在 API 23 中给出“语言不支持”错误