jquery - 如何在 jQuery 中获取当前选择器?

标签 jquery

如果我有以下代码,

$(".selector1, .selector2, .selector3").click(function() {
    switch(CURRENT SELECTOR) {

    }
});

我需要在 switch 语句中使用当前选择器,例如“selector1”、“selector2”。 jQuery 中的选择器选项已被弃用,因此无法使用。我也在使用 jquery 1.4.2,所以请尽量保持在该版本以下。

最佳答案

使用attr获取单击元素的类值的函数:

$(".selector1, .selector2, .selector3").click(function() {
    var elem_class = $(this).attr("class");
    switch(elem_class) {

    }
});

如果元素有多个类,您可以这样做:

$(".selector1, .selector2, .selector3").click(function() {
    var arr = ["selector1", "selector2", "selector3"];
    var arr2 = $(this).attr("class").split(" ");
    var choosen_one = false;
    for(var i=0; i<arr.length; i++) {
       for(var j=0; j<arr.length; j++) {
          if(arr[i] === arr2[j]) {
             choosen_one = arr2[j];
             break;
          }
       }
       if(choosen_one) {
           break;
       }
    }

    switch(choosen_one) {

    }
});

Working demo

引用:

http://api.jquery.com/attr/

关于jquery - 如何在 jQuery 中获取当前选择器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19252541/

相关文章:

jquery - $.mobile.changePage 不适用于 Phonegap?

javascript - 仅在一个 div 中禁用元视口(viewport)?

javascript - 使用javascript获取相对于监视器的元素位置

javascript - 在固定宽度和 overflow hidden 的元素中向右滚动

jquery - 显示每个中继器项目的值

jquery - 从 jQuery 调用 .asmx Web 服务 : GET is not allowed?

javascript - 使用 "please wait"加载 div/模态窗口

php - 使用 jQuery 将弹出窗口 uploader 转换为内联脚本?

javascript - 如何重置 jQuery 生成的 div 的内容?

javascript - TideSDK 使用 Ajax 调用 PHP 文件