javascript - jQuery 多次点击处理

标签 javascript jquery onclick

我使用下面的代码来处理从 list 中点击一个 link,显示一个屏幕,然后在 .back 时隐藏它> 按钮被按下。

是否有更简洁的方法来处理任意 xlist 项的点击功能?

$(".container").on("click", ".dog-btn", function() {
  $(".screen1").css("display","flex")
});
$(".container").on("click", "#back", function() {
  $(".screen1").css("display","none")
});
$(".container").on("click", ".cat-btn", function() {
  $(".screen2").css("display","flex")
});
$(".container").on("click", "#back", function() {
  $(".screen2").css("display","none")
});
$(".container").on("click", ".bird-btn", function() {
  $(".screen3").css("display","flex")
});
$(".container").on("click", "#back", function() {
  $(".screen3").css("display","none")
});

最佳答案

您可以使用 html5 数据属性来传递屏幕类。

HTML 代码

<div class="container">
<button class="flex" data-screen="screen1"> DOG</button> 
<a href="void(0)" data-screen="screen1" class="back">Back </a>
</div>

JavaScript 代码

//Flex Handler
$(".container").on("click", ".flex", function() {
  $("."+$(this).data("screen")).css("display","flex")
});
//Back Button Handler
$(".container").on("click", ".back", function() {
  $("."+$(this).data("screen")).css("display","none")
});

希望对您有所帮助。

关于javascript - jQuery 多次点击处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51606842/

相关文章:

javascript - 在nodejs中用双引号切片缓冲区时获取额外的字符

Jquery:创建动态 SVG 线

css - 标签的点击获取里面的复选框值

java - 您是否需要膨胀 View 才能获取 onClick 方法的 id?

javascript - 通过 Javascript 插入的 attr 换行的 CSS 伪元素内容值

javascript - Jquery getOffset 函数返回未定义

javascript - 使 <a> 标签触摸友好

javascript - 滚动时导航栏的弹跳/缓动动画

javascript - 提醒用户在不保存表单更改的情况下离开页面时,避免使用表单字段

.net - javascript表单发布提交在 IE 中工作,但在 Chrome 中不起作用