javascript - 替换多个 img src 上的结尾

标签 javascript

我有 10 个按钮,每个按钮都有不同的图像和文本。我有每个按钮可以单击开/关,如果单击另一个按钮,我希望事件按钮关闭。我正在与后者作斗争。

var x = 300;

//port1
    $('#port1').click(
    function(){
        var src = $('.image', this).attr('src');
        //var srcs = $(this).attr('src');
        if($(this).hasClass("highlight")) {  
            $('.butt').removeClass('highlight');
            $('.image', this).attr('src', src.replace(/_dark(\.[^.]+)?$/, '_light$1'));
            $('.p1').fadeOut(x);
        }
        else{
            $('.butt').removeClass('highlight');
        //  $('.butt').attr('src').replace('_dark.png', '_light.png');
            $('.butt img').each(function() {
                var src2 = $('.image').attr('src').replace(/_dark(\.[^.]+)?$/, '_light$1');
                $('.image').attr('src', src2);
            });
            $('.talk').fadeOut(x);
            $(this).addClass('highlight');
            $('.image', this).attr('src', src.replace(/_light(\.[^.]+)?$/, '_dark$1'));
            $('.p0').fadeOut(x);
            $('.p1').fadeIn(x);
     }  
});

我遇到的问题是,当我单击该按钮时,它会将所有其他按钮上的 src 更改为与该按钮完全相同,而不仅仅是将其他源上的结尾更改为“_dark”。我认为添加这个“每个”功能会有所帮助,但事实并非如此。

编辑:我是编码新手,但我尝试了一个 jsfiddle:http://jsfiddle.net/messedUP90/yxjoxe41/ 出现的随机计算机是我想要的效果和我编写的代码,然后我记得每个图标都会有所不同。查看第一个标题为“un”的按钮,了解我所说的错误发生的位置。

最佳答案

http://jsfiddle.net/gtf1dk0m/1/

需要重新设置变量src。

这段代码是这样做的:

$('.butt').each( function( index ) {
    if ( $(this).attr('src') ) {
        $(this).attr('src', $(this).attr('src').replace(/_dark(\.[^.]+)?$/, '_light$1'));
    } 
});

忽略图像在 jsfiddle 中不会改变颜色的事实。它适用于 Dreamweaver。 :)

关于javascript - 替换多个 img src 上的结尾,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26807259/

相关文章:

javascript - jQuery模拟点击

javascript - 如何在python中使用真正的jquery从网页中提取数据?

javascript - onEnrollmentLink() 函数的正确用法?

javascript - Chrome 调试 HTML 事件中的 javascript

javascript - 如何使此表具有响应性和边框?

javascript - Charts.js折线图,如果数据相同,如何隐藏y轴开始和结束标签

javascript - Angular 4 在两个不相关的组件之间传递数据

javascript - 是否可以在 webkit 浏览器的 Android 网页中运行 Javascript 功能?

javascript - 如何使用javascript获取网页的长度/大小

javascript - 谷歌浏览器扩展 : Popup window like Firebug Lite?