如何在jquery中找到带数字选择器的字符串

时间:2017-10-13 06:20:11

标签: javascript jquery

我想知道如何找到班级以及数字数字,例如,班级可能是这样的:.test_ico1, .test_ico2, .test_ico3, .test_ico4.

Jquery的

$('.test_ico' + '/[0-9]/').each(function(){
    var a = window.getComputedStyle(this,':after').content;
$(this).parent().hover(function(){
        $(this).attr('data-content', a);
    });
});

3 个答案:

答案 0 :(得分:1)

您可以使用^starts with)符号。

它也被称为Attribute Starts With Selector

$('[class^="test_ico"]').each(function(){

简短示例:

 $('[class^="myClass"]').each(function(){
  $(this).addClass('active');
 });
.active{
   color:red;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul>
  <li class="myClass1">1</li>
  <li class="myClass2">2</li>
  <li class="Class3">3</li>
</ul>

答案 1 :(得分:0)

尝试attribute contains selector [attribute*=value]

$('[class*="test_ico"]').each(function(){
    var a = window.getComputedStyle(this,':after').content;
$(this).parent().hover(function(){
        $(this).attr('data-content', a);
    });
});

注意:仅当您的元素有多个类时,才会优先于@ Alexandru的答案。

答案 2 :(得分:0)

你可以使用 starts with attribute selector,不需要每个功能,你需要在test_ico上的悬停事件而不是父项

$('[class^="test_ico"]').hover(function() {
        var a = window.getComputedStyle(this,':after').content;
        $(this).parent().attr('data-content', a);
    });