将<href=>链接替换为<img src=>图像
Replace <a href=> links to <img src=> images
我正在寻找一种查找/替换图像链接的方法。
例如,以下文本:
<a href="http://domain.com/arbitrary-file.jpg">Text</a>
自
<img src="http://domain.com/arbitrary-file.jpg" />
这是在jQuery中执行此操作的最简单方法:
$("a").each(function() {
$(this).replaceWith("<img src='" + $(this).attr("href") + "'>")
})
图片标签没有内部文本。所以你会把<a href="http://placehold.it/255x255">Something</a>
变成<img src="http://placehold.it/255x255">
编辑:如果您想添加替代文本作为内部文本,您可以执行以下操作:
$("a").each(function() {
$(this).replaceWith("<img src='" + $(this).attr("href") + "' alt='" + $(this).text() +"'>")
})
下面是您可以运行的代码段:
$("a").each(function() {
$(this).replaceWith("<img src='" + $(this).attr("href") + "' alt='" + $(this).text() +"'>")
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<a href="http://placehold.it/255x230">Text</a>
var linksNodes = document.getElementsByTagName('a');
for( var i = 0; i < linksNodes.length; i++ ) {
var a = linksNodes[i];
if( a.href.endsWith(".jpg") || a.href.endsWith(".png") ) {
var img = document.createElement('img');
img.src = a.href;
a.parentElement.replaceChild( img, a );
}
}
endsWith
在ES6中,但IE11不支持它,但是Edge支持它。您可能需要扩展String
:
if( !String.prototype.endsWith ) {
String.prototype.endsWith = function(value) {
var expectedIdx = this.length - value.length;
return this.indexOf( value, expectedIdx ) == expectedIdx;
}
}
<a href="http://domain.com/arbitrary-file.jpg" class="test">Text</a>
<script type="text/javascript">
jQuery(document).ready(function(){
var attrib = jQuery('a.test').attr('href');
jQuery('a.test').removeAttr('href');
jQuery('a.test').attr('src',attrib);
});
试试这个:
var links = document.getElementsByTagName('a');
var i;
var currentLink;
var newImg;
for (i=0; i<links.length; i++) {
currentLink = links[i];
newImg = document.createElement('img');
newImg.src = currentLink.href;
currentLink.parentNode.insertBefore(newImg, currentLink);
currentLink.remove();
}
可以使用 Jquery。
斯捷帕:
-
首先
<a>
标签放入div
标签中。为div
标记提供唯一 id:
<div id='divtag'><a href="http://domain.com/arbitrary-file.jpg">Text</a> </div>
-
var value= $('#divtag a').attr('href')
-
$('#divtag').text('<img src="+ value +">Text</img>')
.
按照上述步骤根据需要完成工作。
相关文章:
- Javascript:使用绝对路径设置img src
- 图像可以从源<img src=""/>.TEXT可以在没有javascript的情况下从外部
- 插入“;img src"在javascript中
- 从二维数组中获取img src和img维度,并在body中显示
- 在不发出请求的情况下设置img src
- Jquery/Javascript使用IF/ELSE语句更改img SRC
- 使用JQuery从包含A href值中设置*all*IMG-src值
- Django,HTML,JS:<img src=“#">可以在HTML中工作,但不能在JS文件中工作
- Img-src只通过javascript更改一次
- 正则表达式使链接可点击(仅在“href”而不是“img src”中)
- 交换 img src 或显示/隐藏多个图像是否更快
- 如果有办法在 N 秒内加载未触发,则有没有办法设置 img src
- img src 在 Firefox 和 IE 的 jQuery 脚本中没有更改
- 如何从弹簧控制器方法更新html img src
- onload 不会在 Firefox 中使用 createObjectURL img.src 触发
- img src 属性在为空时返回页面的 URL
- EmberJS config prod img src url
- Jquery-如何在悬停时更改img src
- writeln img src将数据提交到外部系统-Firefox和IE挂起
- 使用jQuery禁用img src等于特定值时的href