Javascript 变量,增量函数
Javascript variable, increment function?
我对以下JavaScript代码有问题:
$( "#toggleLog-1" ).click(function() {
$( "#toggled-1" ).slideToggle( "slow" );
});
$( "#toggleLog-2" ).click(function() {
$( "#toggled-2" ).slideToggle( "slow" );
});
$( "#toggleLog-3" ).click(function() {
$( "#toggled-3" ).slideToggle( "slow" );
});
/// ... and many other IDs
如您所见,我想知道如何增加 id 并压缩我的代码,因为我的 css 文件中有很多 ID。在 php 中,我知道我将如何做到这一点(使用 foreach 和增量函数),但是我如何在 JavaScript 中做到这一点?
嗯
,怎么样:
$("[id^=toggleLog]").click(function() {
var idNum = this.id.split("-")[1];
$("#toggled-" + idNum).slideToggle("slow");
});
尽管所有可点击元素似乎都符合其id
属性的特定约定,但为所有可点击元素指定一个特定的类和一个指定要切换的元素的选择器的 data-*
属性会更容易、更干净。例如,具有以下结构:
<div class="toggler" data-toggler="#toggled-2"></div>
<div id="toggled-2"></div>
并使用它:
$(".toggler").on("click", function () {
var $this = $(this),
toggler = $this.attr("data-toggler");
$(toggler).slideToggle("slow");
});
它以 toggler
类的所有可单击元素为目标。在单击处理程序中,它查看其特定的 data-toggler
属性,并据此选择元素,对找到的任何元素调用.slideToggle()
。
相关文章:
- 访问嵌套函数结构中的JavaScript父函数变量
- Javascript函数变量传递语法问题
- JavaScript 函数变量范围问题
- 在 promise 中获取构造函数变量
- 将函数结果传递给Javascript中的另一个函数变量
- 用对象设置函数变量's值
- Javascript函数变量应生成错误,而不是未定义的错误
- 我可以访问用户脚本中的匿名函数变量吗?
- 在实例化期间使用构造函数变量
- 为什么在 JavaScript 中不能用函数变量覆盖字符串变量
- JavaScript 允许调用函数访问调用函数变量
- 如何在嵌套原型中访问 JavaScript 构造函数变量
- 对函数变量的 JavaScript 控制台日志输出感到困惑
- 如何将函数变量传递给主干模型上的 jQuery 事件
- 如何访问构造函数变量
- 实例函数变量不会更改
- 为什么函数变量在变量之后是未定义的
- 用内部函数变量更改外部函数变量?Javascript
- Javascript - 使用闭包递增静态函数变量模拟
- 异步 JavaScript 静态函数变量