我正在为我的网站制作一个帖子系统,我想要一些可以转换文字链接的javascript
<a href="path/to/image.jpg">Image</a>
到
<a href="path/to/image.jpg"><img src="path/to/image.jpg" /></a>
但是,当正则表达式识别出链接是图像时,只能将其转换为图像链接。
或者我不介意在链接中添加data-type =“image”属性,但我仍然需要将代码转换为图像链接。
答案 0 :(得分:1)
$('a[href$=".png"], a[href$=".jpg"], a[href$=".gif]"').each(function(){
$(this).html('<img src="' + $(this).attr('href') + '" />');
});
答案 1 :(得分:1)
我建议在要转换的所有锚点链接上放置一个类。假设您选择使用convert
类。然后,您可以使用jQuery在锚标记内添加img
标记:
// for each anchor that needs converting
$('.convert').each(function() {
// get the href of the anchor
var href = $(this).attr('href');
// create the string we want to append to the anchor
var imgString = '<img src="' + href + '" alt="" />';
// and then append it
$(this).append(imgString);
});
答案 2 :(得分:0)
@Alex解决方案是一个更好的解决方案,但如果你不能添加一个类
$('a').each(function(){
var a = $(this)
if(a.text() == 'Image')
a.html('<img src="'+a.href+'" >')
})