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