我想使用jquery将标题标签添加到ls-thumb-active类中,我用它来了解它:
<script type='text/javascript'>//<![CDATA[
$(window).load(function(){
tooltip = "mouseover";
$('.ls-thumb-active').attr('title', tooltip);
$('.displaytitle').html($('.ls-thumb-active').attr('title'));
});//]]>
</script>
问题是,我希望它将实际的img名称显示为工具提示变量,而不是最后的.jpg。这可能吗?
答案 0 :(得分:3)
您可以使用以下内容取出图像名称的“.jpg”部分,这样您就可以在获得的名称后删除任何扩展名:
var imageName = imageElementYouAreGettingSomewhere.src;
imageName = imageName.substr(0, imageName.lastIndexOf('.'));
$('.displaytitle').attr('title', imageName );
答案 1 :(得分:2)
您可以通过“拆分”您的img名称轻松完成此操作。所以我们假设var图像是你的图像名称,如下所示:
var image = 'something_unusual.jpg';
您可以获得如下图像名称:
var image_name = image.split('.')[0];
然后,当然,您添加它的方式与第一次相同:
$('.ls-thumb-active').attr('title', image_name);
请注意,我使用方法“split”,它将图像名称分隔为“。”。因此,如果图像由于某种原因,作为“。”以他的名义,这可能会破裂。您还可以使用最后一个点的索引进行子串,拼接等。但在该示例中,如果图像名称中没有点,则无论文件扩展名是什么,它都将完美地工作。 希望这会有所帮助。
答案 2 :(得分:1)
由于每张图片都需要这样,因此您需要遍历所有图像并设置title
属性。
$('.ls-thumb-active').each(function() {
var imgName = $(this).attr('src').split('.')[0];
$(this).attr('title', imgName );
});
答案 3 :(得分:0)
由于扩展名为:
您可以使用子字符串在末尾剪切四个字符并添加到标题中。
$('.ls-thumb-active').attr('title', substr(tooltip, 0, strlen(tooltip) - 4));
答案 4 :(得分:0)
使用此代码:
<script type='text/javascript'>
jQuery(document).ready(function($) {
tooltip = "mouseover";
thumActive = $('.ls-thumb-active'); // Cached object
// Get the source name of the image
thumbImageSrc = $('.target-of-the-image').attr("src");
// To slice from the last '/' if there is no '/' then slice from the very start
thumbImageNameFirstSlice = ( thumbImageSrc.lastIndexOf( '/' ) ? thumbImageSrc.lastIndexOf( '/' ) + 1 : 0 );
// And will slice to the last '.'
thumbImageName = thumbImageSrc.slice( thumbImageNameFirstSlice, thumbImageSrc.lastIndexOf( '.' ) );
// Your code =)
thumActive.attr('title', tooltip);
// Assign the name to the '.displaytitle'
$('.displaytitle').html( thumbImageName );
});
</script>
有一个jsFiddle:http://jsfiddle.net/Np6FG/1/