javascript - 灰度缩放图像并引用原始图像

标签 javascript jquery-ui

我知道如何对图像进行灰度化。我正在使用 jquery Accordion ,并且每个 Accordion 标题上都有图像。我想在 Accordion 处于事件状态时将图像更改为灰度,并在 Accordion 不活动时将图像更改回其原始形式。我正在使用事件 AccordionChange。问题是我无法保存原始图像。请帮忙。另外,在灰度化之后,我尝试直接将原始 src 提供为

document.getElementById("imgId").src = "images/pic.jpg";

这不起作用。

最佳答案

如果您使用 jquery ui Accordion,这里就是答案:

//please note these are global variables
var imageArr=[];
var oldIndex = false;
var oldSrc;
$(document).ready(function(){

//grab all heading images 
imageArr = $("#accordion h3 img");

$( "#accordion" ).accordion({
    change: function(event, ui) { 
        active = ui.options.active;


        //restore clicked image
        if (oldIndex!==false) {
            $(imageArr[oldIndex]).attr("src",oldSrc);
        }

        //save current index for the future
        oldIndex = active;
        //save original src for the future
        oldSrc = $(imageArr[active]).attr("src")
        //implement some logic here to choose grayscale image and set the src value 
        $(imageArr[active]).attr("src","grayscale.png");
    }
});

})

关于javascript - 灰度缩放图像并引用原始图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4698255/

相关文章:

javascript - 更改并重新初始化自动完成

javascript - 贾勒特不工作

javascript - 在 Vue Ant Design 中使用 Modal.method() 的 onOk 属性

javascript - 仅将元素放入前面的 droppable 中

jquery-ui - 是否有适用于 jQueryUI 1.9.1 的闭包编译器 Extern?

javascript - 从客户端调用服务器端函数

jquery-ui - jQuery - 一个接一个地附加多个元素

javascript - 带有隐藏 css 的元素不会随 javascript .show() 改变

javascript - 如何在 Facebook 页面的 iframe 选项卡上捕获 JavaScript 事件

javascript - 错误 : `fsevents` unavailable (this watcher can only be used on Darwin)