2013-01-05 22 views
1

當我嘗試使用JScript的如何獲取圖片名和alt ATTR,然後查找和替換字符它

$img.attr('title', filename.substring((filename.lastIndexOf('/'))+1, filename.lastIndexOf('.'))); 

我得到的圖像的名稱生成在我的博客上的圖片名稱包含破折號和加號。我的問題是要獲得名字,而不是大寫字母,加上和我想要獲得空格的字符。任何人都可以做到這一點。 整個代碼看起來像這樣

<script src='http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js' type='text/javascript'/> 
<script type='text/javascript'> 
//<![CDATA[ 
$(document).ready(function() 
{ 
$('img').each(function() 
{ 
var $img = $(this); 
var filename = $img.attr('src') 
$img.attr('title', filename.substring((filename.lastIndexOf('/'))+1, filename.lastIndexOf('.'))); 
$img.attr('alt', filename.substring((filename.lastIndexOf('/'))+1, filename.lastIndexOf('.'))); 
$img.attr('title', filename.replace("+"," ")); 
}); 
}); 
//]]> 
</script> 

這是一個完整的劇本,我想知道如何避免從圖像名稱特殊字符,而得到它,並用空格代替特殊字符。

它必須放在blogger html代碼的一節之後。

+0

'$ img.attr( '標題',title.replace( 「+」,」「));'標題(第二一個)沒有定義。 – Popnoodles

+2

你能給一個文件名的例子和它的標題是什麼樣的例子 - 因爲你的問題很混亂。 – Popnoodles

+0

現在檢查一下,我提供了完整的腳本。 – user1948502

回答

1

Working demo

它看起來就像你正在試圖獲得的基本部分,然後更換 - 或+與空間,例如給出http://somedomain.com/images/some+image-here.jpg你想some image here

以下取基地名,用空格替換破折號和加號,並刪除數字。

$('img').each(function(){ 
    var bn=$(this).attr('src').replace(/[0-9]|^.*\/|\.[^.]*$/g, '').replace(/[\+|\-]/g,' '); 
    $(this).attr('title', bn).attr('alt',bn); 
}); 

,或者如果你想保持.JPG

var bn=$(this).attr('src').replace(/[0-9]|^.*\/|\.*$/g, '').replace(/[\+|\-]/g,' '); 
+0

現在檢查我提供完整腳本的腳本。 – user1948502

+0

但它取代了第一個+只嘆息下一次 – user1948502

+0

可能是肯定的。對我的腳本做一些改變,並給我完整的腳本。我真的需要它。 – user1948502