Mac*_*ort 3 anchor jquery image class
尝试将标记包装在图像周围,addClass和img的输入src作为标记的href:
$(document).ready(function() {
$(".new img").each(function() {
var src = $(this).attr('src').addClass('image');
var a = $('<a/>').attr('href', src);
$(this).wrap(a);
});
});
Run Code Online (Sandbox Code Playgroud)
我的HTML:
<img class="new" src="pic0.png" title="Image_Title"/>
Run Code Online (Sandbox Code Playgroud)
似乎无法让这个工作.任何的意见都将会有帮助!
lon*_*day 10
两件事情.首先,你的选择器向后 - 它应该是img.new.其次,attr返回一个字符串,而不是jQuery,所以你不能链接它.执行以下操作,它应该工作:
$(document).ready(function() {
$("img.new").each(function() {
var $this = $(this);
var src = $this.attr('src');
$this.addClass('image');
var a = $('<a/>').attr('href', src);
$this.wrap(a);
});
});
Run Code Online (Sandbox Code Playgroud)
您的选择器只需要调整,这个:
$(".new img")
Run Code Online (Sandbox Code Playgroud)
应该:
$("img.new")
Run Code Online (Sandbox Code Playgroud)
该new班是对的<img>本身,<img>不是的后代class="new"元素,这是你目前的选择是寻找.还.attr('src')得到一个字符串,所以你需要在调用之前添加该类,总体如下:
$(function() {
$("img.new").each(function() {
var src = $(this).addClass('image').attr('src');
var a = $('<a/>').attr('href', src);
$(this).wrap(a);
});
});
Run Code Online (Sandbox Code Playgroud)
你可以在这里进行测试,或者简单一点/速度更快的版本在这里:
$(function() {
$("img.new").each(function() {
var a = $('<a/>').attr('href', this.src);
$(this).addClass('image').wrap(a);
});
});
Run Code Online (Sandbox Code Playgroud)