在jquery中出现’addClass’问题

<html>
<head>
<style type="text/css">
    a.red {
        color: red;
    }
    a.green {
        color: green;
    }   
    a.yellow {
        color: yellow;
    }   
</style>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js">
</script>
<script type="text/javascript">
    $(document).ready(function() {
        $('a[href^=red]').addClass('red');
        $('a[href$=.jpg]').addClass('green');
        $('a[href*=pic]').addClass('yellow');
    });
</script>
</head>
<body>
<a href="red.gif">red</a></br>
<a href="green.jpg">green</a></br>
<a href="yellowpic.png">yellow</a>
</body>
</html>

题:

在前端,只有红色作品,绿色和黄色不起作用,为什么?

最佳答案
来自文档

jQuery( "[attribute='value']" )

attribute:属性名称.

value:属性值.可以是不带引号的单个单词或带引号的字符串.

你必须在匹配的字符串周围添加“.

$('a[href^="red"]').addClass('red');
$('a[href$=".jpg"]').addClass('green');
$('a[href*="pic"]').addClass('yellow');
           ^   ^

因此,它可以用于多个单词,例如

$('a[value*="some value"]')

Demo

转载注明原文:在jquery中出现’addClass’问题 - 代码日志