javascript - Javascript 自动运行 onclick 功能
问题描述
在为网页制作图库时,我遇到了 js 自动运行 (next_image) 函数的问题,经过一番搜索,我发现这是由于语句后面的 () 造成的。但是,我一生都无法弄清楚如何将 clicked_id 获取到 next_image 函数。
所以我的问题是:我怎样才能使函数仅在单击按钮后运行,同时仍发送 clicked_id?
function opencase(clicked_id) {
document.getElementById("right_arrow").addEventListener("click", next_image(clicked_id));
}
function next_image(photoid){
console.log(photoid);
photoid++;
document.getElementById("disp").setAttribute("src", "images/image"+photoid+".jpg");
console.log(photoid);
}
任何帮助将不胜感激:D
解决方案
不要直接调用函数,而是从addEventListener
回调函数中调用它
function opencase(clicked_id) {
document.getElementById("right_arrow").addEventListener("click", function() {
next_image(clicked_id)
});
}
function next_image(photoid) {
console.log(photoid);
photoid++;
document.getElementById("disp").setAttribute("src", "images/image" + photoid + ".jpg");
console.log(photoid);
}
推荐阅读
- javascript - 到达底部页脚时如何停止固定侧边栏的位置
- excel - Excel VBA,错误 438“对象不支持 WorksheetFunction 上的此属性或方法
- javascript - PHP 正则表达式到 Javascript 正则表达式,用于 HTML 元素作为字符串
- database - 在本地环境中连接 RDS 数据库
- camunda - 无法在子流程中定义的活动处启动BeforeActivity
- python - Flask-migrate 找不到自定义模块
- c# - MVVM 中的 Xamarin.Forms bindingContext
- android - 如何设置 EditText?
- docker - go get golang-migrate inside docker error
- html - 使用 CSS 选择嵌套元素