Tricky JQuery更新图像href问题

时间:2011-07-05 21:31:35

标签: javascript jquery html image

好吧所以我不知道是否可以做到,但是我们在堆栈溢出时有很好的想法,我相信有人可以指出我正确的方向。

所以我希望动态更新图像的href标签,这样当用户选择不同的产品选项(让我们说一个不同的气味)时,图像链接会将用户带到那个气味较大的图像文件。

到目前为止,这是代码:

$("#main-image").attr("href", $('.more-views ul li a img[alt="' + $select.find('option:selected')[0].getAttribute('product_id') + '"]').attr('src'));

这就是容易的部分。现在棘手的部分是削减代码获得的URL。

现在它只获得较小版本的图像来填充展开的视图。 我需要它来获得更大的图像。

这是放大图片的链接:     http://staging.greencupboards.com/media/catalog/product/cache/1/image/9df78eab33525d08d6e5fb8d27136e95/feeds/MrsMeyers/MRM-64565-a.jpg

以下是较小图片的链接:      http://staging.greencupboards.com/media/catalog/product/cache/1/image/370x/9df78eab33525d08d6e5fb8d27136e95/feeds/MrsMeyers/MRM-64565-a.jpg

注意较小的图像如何在路径名中包含370x。有什么办法可以把它作为一个字符串处理并过滤掉它!请记住,我需要使用上面的.attr代码。

让javascript geniuses吧!

提前致谢!

1 个答案:

答案 0 :(得分:2)

只需将.replace(/370x\//,'')添加到.attr('src')

即可
$("#main-image").attr("href",
                  $('.more-views ul li a img[alt="'
                         + $select.find('option:selected')[0].getAttribute('product_id')
                         + '"]')
                    .attr('src')
                    .replace(/370x\//,'') );