循环.单击Javascript中的Function
Loop .click Function in Javascript
我想知道如何用slideToggle循环一个.click函数。以下是单个事件的代码:
$("#slide1").click(function () {
$("#panel1").slideToggle(1000);
});
slide1是用户点击面板以向下或向上滑动的div。我已经尝试了for循环等,以找出如何为多个幻灯片和面板循环。
假设我有10张幻灯片,是否可以为所有10张幻灯片创建一个循环,或者必须单独完成?
做到这一点的整洁方法:
<div class="slide" data-panel="panel1">...</div>
<div id="panel1">...</div>
这样制作幻灯片。然后你只需要一个处理程序:
$(".slide").click(function() {
$("#"+this.getAttribute("data-panel")).slideToggle(1000);
});
您需要的是delegate
。这将为任何孩子处理任何事件。第一个参数是要侦听其子级的筛选器。在这种情况下,您只想捕获.slide
s的事件。第二个参数指定要侦听的事件类型,在这里您需要click
,因为您只需要单击事件。最后一个参数是处理程序。在这个处理程序函数中,this
指的是已经被点击的元素
$('#container').delegate('.slide', 'click', function(event) {
$($(this).data('toggle')).slideToggle(1000);
});
.slide {
width: 100px;
height: 40px;
background-color: #AAA;
margin: 4px;
padding: 4px;
}
.panel {
width: 200px;
height: 80px;
background-color: #44A;
margin: 8px;
padding: 4px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="container">
<div class="slide" data-toggle="#panel1">Toggle panel 1</div>
<div class="slide" data-toggle="#panel2">Toggle panel 2</div>
<div class="slide" data-toggle="#panel3">Toggle panel 3</div>
<div class="panel" id="panel1">Panel 1</div>
<div class="panel" id="panel2">Panel 2</div>
<div class="panel" id="panel3">Panel 3</div>
</div>
您可以添加任意数量的幻灯片和面板(也可以动态添加),delegate
将处理.slide
上的任何单击事件。
你可以用一种更动态的方式:
$(".slide").click(function() {
$("#"+$(this).attr("data-panel")).slideToggle(1000);
});
我希望这会有所帮助,祝好运
相关文章:
- 如何在JavaScript中创建类似于something.function()的函数
- 禁用Javascript事件DOM中的Function
- 检查函数是否属于javascript中的function类型
- 如何在 jQuery 中的 img.onload = function() 中返回一个变量
- 如果 Functions 是 javascript 中的对象,为什么 function.constructor 指向 F
- 如何在 javascript 中返回 key: function() 的值
- JavaScript 中的 void、eval 和 Function 构造函数有什么区别?
- $(function () { } in javascript/Jquery 中的意思是什么
- 什么'这是关于在JavaScript中使用Function.caller的共识
- 从jQuery$(document).ready(function(){});中的外部JavaScript文件获取变量值
- 循环.单击Javascript中的Function
- 向使用javascript中的new function关键字创建的函数传递参数
- 全局变量如何在两个javascript文件中的Function中的javascript中工作
- 如果 if 条件为 false,if 块中的函数是否应该为 typeof=='function'
- put method into function()和prototype在js中的区别是什么?
- 试图理解 js 中的 Function.prototype.call
- 什么是new function(settings){..}(jQuery.查询|| {});javascript中的Me
- JavaScript中的define([, function])是什么?
- 如何在cshtml中使用$(document).ready(function()中的if条件
- 获取RethinkDB中replace(function(){})中的实际字段值