我需要在每个网页上的每个图片中添加alt
属性。问题是某些网页上有数百的图片。
有人建议使用JavaScript或jQuery的方法,对于页面上的每个图像,将图像的名称(减去扩展名)复制到新的alt
属性吗?
之前:
<img src="android.jpg width="100" height="50" />
之后(不包括“.jpg”):
<img src="android.jpg width="100" height="50" alt="android" />
答案 0 :(得分:12)
在jQuery中:
$(document).ready(function() {
$('img').each(function(){
var $img = $(this);
var filename = $img.attr('src')
$img.attr('alt', filename.substring(0, filename.lastIndexOf('.')));
});
});
您可以通过添加以下内容来询问alt属性是否为already exist:
var attr = $(this).attr('alt');
if (typeof attr == typeof undefined || attr == false) {
答案 1 :(得分:3)
这是一种JavaScript方法:
function runScript() {
for (i = 0; i < document.getElementsByTagName("img").length; i++) {
document.getElementsByTagName("img")[i].setAttribute(
"alt", document.getElementsByTagName("img")[i].src);
}
}
加载页面后运行函数runScript()
!
答案 2 :(得分:0)
此脚本可以帮助您处理您的工作。它将在alt属性
中附加图像的文件名<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('.')));
});
});
//]]>
</script>