【问题标题】:jQuery add data to classjQuery向类添加数据
【发布时间】:2014-12-17 02:56:36
【问题描述】:

有人可以帮我解决一下这个语法吗:

jQuery(".listid' + data[i].id + '").hover(function(){
    $(".list' + data[i].id + '").stop(true, true).fadeToggle();
});

最终结果应该是:如果你翻转.listid1,则显示.list1,如果你翻转.listid2,则显示.list2,等等

【问题讨论】:

  • 你从来没有真正关闭你的报价。 $('.listid' + data[i].id) 可能是你想要的。
  • 我认为引号是错误的 - 试试这个 jQuery(".listid" + data[i].id)
  • 你的 HTML 是什么?您可以通过 DOM 遍历而不是通过索引类进行选择来完成这项工作。
  • 我猜这不仅仅是语法问题。我已经上传了文件,所以你可以看到我想要完成的事情:link

标签: jquery syntax


【解决方案1】:

你搞砸了引号:

jQuery(".listid' + data[i].id + '").hover(
        function(){
        $(".list' + data[i].id + '").stop(true, true).fadeToggle();
        }
    );

您还需要将data[i].id 存储在闭包中:

(function(id){
    jQuery(".listid" + id).hover(
            function(){
            $(".list" + id).stop(true, true).fadeToggle();
            }
        );
})(data[i].id)

否则,回调将不起作用,因为 i 将发生变化。

【讨论】:

    【解决方案2】:

    如下所示修改你的代码

    jQuery(".listid" + data[i].id).hover(
                function(){
                $(".list" + data[i].id ).stop(true, true).fadeToggle();
                }
            );
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-01-07
      • 2015-12-14
      • 1970-01-01
      • 1970-01-01
      • 2012-08-01
      相关资源
      最近更新 更多