微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

jQuery-从另一个没有hasClass的元素窃取类

如何解决jQuery-从另一个没有hasClass的元素窃取类

| 我有一个清单
<ul class=\"thisList\">
  <li><a href=\"\" class=\"iconViewport icon_import\"><span>Import</span></a></li>
  <li><a href=\"\" class=\"iconViewport icon_products\"><span>Artikel</span></a></</li>
</ul>
我想jquery-\“ steal \”每个li的第二个类,插入一个img元素并将被盗的类附加到它。我不能使用hasClass,因为类每次都不同。 有人可以帮助我纠正以下问题:
var thief = $(\'.thisList li a\').className.split(/\\s+/);
var booty = thief[1];
$(\'.thisList li a\').after(\'<img class=\"someOtherClass\'+booty+\'\" />\');
我正在尝试将a的所有类放入一个数组中,然后窃取该数组的第二个元素并将其附加到插入的img标签上。 尚无法使用...感谢您的帮助!     

解决方法

$(\'.thisList li a\')
产生一个集合,而不是单个元素,因此您需要对其进行迭代。在构建图像时,您还会缺少空格。
$(\'.thisList li a\').each(function() {
    var thief = this.className.split(/\\s+/);
    var booty = thief[1];
    $(this).after(\'<img class=\"someOtherClass \' + booty + \'\" />\');
});
    ,您必须遍历链接,并分别处理每个链接。否则,您将无法获得它们各自的
className
属性。
$(\'.thisList li a\').className
仍然不起作用,因为
className
是DOM元素的属性,而不是jQuery对象的属性。 应该这样做:
$(\'.thisList li a\').each(function() {
    var booty = this.className.split(/\\s+/)[1];
    $(this).after(\'<img class=\"someOtherClass \'+booty+\'\" />\');
});
如果“窃取”类意味着将其删除,那么您也可以调用:
$(this).removeClass(booty);
更新:DEMO     ,它不起作用的原因是因为$(\ .. thisList li a \')返回一个jquery对象,该对象没有属性className。 这是未经测试的尝试
$(\'.thisList li a\'). each(function(index,el){
   var class2 = el.className.split(/\\s+/)[1];
   $(el).after(\'<img class=\"someOtherClass \'+class2+\'\" />\');
})
为什么在地球上您的变量名为booty?哇,两个人都击败了我!     ,经过测试和工作:
var classString = \'\';

$(\'.thisList li a\').each(function(){
  var elements = $(this).attr(\'class\').split(\' \');
  classString += \' \' + elements[1];
});

$(\'.thisList\').after($(\'<img class=\"someOtherClass\'+classString+\'\"/>\'));
    

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?