2011-12-03 47 views
2

我想寫一個腳本,將查找所有<a>標籤的目標是JPG,GIF或PNG,並附加一個函數。查找鏈接的目標圖像與JavaScript/jquery

$('a') 
    .filter(function(){ 
     return this.href.match(/*probably some regex here?*/) 
    }) 
    .bind('mouseover', function(){ 
     alert('foo'); 
    }) 

這應該工作,但我不知道正則表達式是什麼樣子。如果有更好的方法,請讓我知道。謝謝!

回答

7

你幾乎已經擁有了!

$('a[href]').filter(function() { 
    return /(jpg|gif|png)$/.test($(this).attr('href')) 
}).bind('mouseover', function(){ 
    alert('foo'); 
}) 
+1

http://jsfiddle.net/GvhHy/1/ – Jasper

1

你可能想檢查文件名不區分大小寫的正則表達式。因爲有些文件可以是「.JPEG」而不是「.jpeg」。所以試試這個:

var file = "life/is/short.JPG" 

if (/(jpg|jpeg|gif|png)$/i.test(file)) { 
    alert("the file is an image"); 
} 
else { 
    alert("the file is not an image"); 
}