只是为了给出一个想法,我在这里尝试做的是一个示例代码:
$(function(){
if ($('.maybe > div > a.link:contains(".JPG, .jpg, .gif, .GIF")').length) {
alert('hello');
});
Run Code Online (Sandbox Code Playgroud)
我想检查一些链接的内容是否包含点和所有图像扩展名的字母,如
<div class="maybe">
<div>
<a class="link" href="someURL">thisIsAnImage.jpg</a>
<a class="link" href="someURL">thisIs**NOT**AnImage.pdf</a>
</div>
</div>
<div class="maybe">
<div>
<a class="link" href="someURL">thisIs**NOT**AnImage.zip</a>
<a class="link" href="someURL">thisIsAnotherImage.png</a>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
div和链接是由php动态生成的,所以一旦页面生成,就无法知道有多少链接和div.
如何以适当的方式编写代码?
非常感谢帮助我解决问题.
小智 7
这是我的第一直觉:
$('.maybe .link').each(function () {
if ($(this).text().toLowerCase().match(/\.(jpg|png|gif)/g)) {
console.log("yay I did it");
}
});
Run Code Online (Sandbox Code Playgroud)
在链接文本上使用toLowerCase(),这样您就不必检查大小写.然后将String.match(regex)与regex组一起使用以匹配所有文件扩展名.
希望这可以帮助!
编辑:这是jsfiddle中的一个例子.打开javascript控制台以查看console.log语句的输出.http://jsfiddle.net/9Q5yu/1/
| 归档时间: |
|
| 查看次数: |
3223 次 |
| 最近记录: |