0

我的页面上有一个 div,里面有一个图像,单击 div 展开,我将图像交换为相应的高分辨率版本。

我正在使用以下内容进行此操作...

$('.work-showcase').click(function(){
    if ( !$(this).hasClass('active') ){
        var img = $(this).find('ul li img');
        img.attr('src', function(i, value) {
            return '_includes/images/work/hires/' + value;
        });
    } else { 
        var img = $(this).find('ul li img');
        img.attr('src', function(i, value) {
            return '' + value;
        });

    };
});

我的问题是最后一部分但是我需要删除 ''_includes/images/work/hires/''

有人可以推荐一个解决方案吗?

4

2 回答 2

3

您需要删除附加的路径才能恢复以前的 url,您可以使用replace()删除附加的路径。

改变

 return '' + value;

 return  value.replace('_includes/images/work/hires/', '');
于 2013-01-14T09:27:06.130 回答
2
var path = '_includes/images/work/hires/';
$('.work-showcase').click(function(){
    if ( !$(this).hasClass('active') ){
        var img = $(this).find('ul li img');
        img.attr('src', function(i, value) {
            return path + value;
        });
    } else { 
        var img = $(this).find('ul li img');
        img.attr('src', function(i, value) {
            return value.substring(path.length);
        });

    };
});

这里是关于 substring() 的文档http://www.w3school.com.cn/js/jsref_substring.asp

于 2013-01-14T09:27:31.040 回答