Blogger自动用文章标题为图片添加alt文本的代码修改求助
解决Blogger自动为图片添加文章标题作为Alt文本的问题
嘿,我来帮你调整代码实现这个需求!你当前的代码是从图片URL里截取文件名来填充alt和title属性,现在咱们把它改成用文章标题来填充,步骤很简单:
核心思路
Blogger的文章标题一般会放在带有post-title或entry-title类的<h1>或<h2>标签里,我们先通过DOM选择器获取这个标题文本,再遍历所有图片把标题赋值给它们的alt和title属性。
修改后的完整代码
//<![CDATA[ $(document).ready(function() { // 获取文章标题 - 请根据你的Blogger模板调整选择器 let postTitle = $('h1.post-title.entry-title').text().trim(); // 如果h1标签里没找到标题,尝试h2(适配不同模板) if (!postTitle) { postTitle = $('h2.post-title.entry-title').text().trim(); } // 遍历页面所有图片,设置alt和title为文章标题 $('img').each(function(){ const $img = $(this); $img.attr('alt', postTitle); $img.attr('title', postTitle); // 可选:如果想在标题后补充图片文件名,取消下面两行注释 // const filename = $img.attr('src').substring($img.attr('src').lastIndexOf('/') + 1, $img.attr('src').lastIndexOf('.')); // $img.attr('alt', `${postTitle} - ${filename}`); }); }); //]]>
注意事项
- 确保jQuery已加载:你的原始代码用了
$,说明模板里已经引入了jQuery,如果没有的话,需要在Blogger模板的<head>区域添加这段代码:<script src='https://ajax.googleapis.com/ajax/libs/jquery/3.7.1/jquery.min.js'></script> - 调整标题选择器:不同的Blogger模板可能用不同的标签或类名存放标题,你可以右键页面上的文章标题→“检查元素”,确认实际的选择器(比如有的模板用
.post-title而没有entry-title,就改成$('h1.post-title')) - 自定义扩展:如果想让
alt文本更具体,比如结合文章标题和图片文件名,代码里已经注释了对应的逻辑,取消注释就能用
内容的提问来源于stack exchange,提问作者Nonick
相关产品推荐
相关产品推荐

