0

<div class=b>a<div>
<div class=c>b<div>
<div class=d>c<div>
<div class=e>d<div>
<div class=f>e<div>
<div class=g>f<div>

都要执行同一个函数。我是每个选出来,然后写一个函数。感觉这样写好麻烦,一大堆。
请问怎么写比较好。

juqery小白,请大神指点下。
谢谢。

查看全部 6 个回答

2

关键看你要执行的是个什么样的函数,如果是 $.fn 中定义的函数(即 jQuery 对象的方法),通常是可以直接应用于某个选择器匹配的所有对象的,比如

// 下面这个选择器匹配所有指定了 class 的 div
$("div[class]").on("click", function() {
    console.log($(this).text());  // 输出点击的 DIV 中的文本
});

如果不是 $.fn 中定义方法函数,可以使用循环来依次执行

$("div[class]").each(function() {
    doSomethingWith($(this).text());
    // 依次对每个 div 执行 doSomethingWith(),
    // 将当前 DIV 中的文本作为参数
});

// 注意 jQuery 的 `each()` 函数中的 `this` 即指向参与循环的当前元素