我创建了自己的小jQuery插件,用于在悬停时更改图像src
$.fn.hover_image = function () {
$(this).each(function () {
var img = $(this).children('img');
var oldImgSrc = img.attr('src');
var newImgSrc = oldImgSrc.substr(0, oldImgSrc.lastIndexOf('.')) + '_hover.png';
$(this).hover(function () {
img.fadeOut('fast', function () {
img.attr('src', newImgSrc);
img.fadeIn('fast');
});
},
function () {
img.fadeOut('fast', function () {
img.attr('src', oldImgSrc);
img.fadeIn('fast');
});
});
return $(this);
});
};
插件工作正常,但我在控制台中出错了
Uncaught TypeError: Cannot call method 'lastIndexOf' of undefined
代码有什么问题?我该如何解决?