Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/369.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 交换图像Src JQuery不工作?_Javascript_Jquery - Fatal编程技术网

Javascript 交换图像Src JQuery不工作?

Javascript 交换图像Src JQuery不工作?,javascript,jquery,Javascript,Jquery,…但由于某种原因,它不会起作用。我是初学者,如果有人能解释我做错了什么,我会非常感激。xD 我很快拼凑了一个代码笔示例,试图说明我的问题 我讨厌问这么多问题,但这是我的第一个项目,我有自己的回旋余地,我一直在努力在截止日期前完成,以便给人留下深刻印象。xD和大学把我的日程安排得一团糟,所以我一直在犯愚蠢的错误。几周前我才开始学习Javascript…试试这个: $('.thumbnails img').click(function () { var thmb = this; va

…但由于某种原因,它不会起作用。我是初学者,如果有人能解释我做错了什么,我会非常感激。xD

我很快拼凑了一个代码笔示例,试图说明我的问题

我讨厌问这么多问题,但这是我的第一个项目,我有自己的回旋余地,我一直在努力在截止日期前完成,以便给人留下深刻印象。xD和大学把我的日程安排得一团糟,所以我一直在犯愚蠢的错误。几周前我才开始学习Javascript…

试试这个:

$('.thumbnails img').click(function () {
    var thmb = this;
    var src = this.src;
    $('.project-img img').fadeOut(400, function () {
        thmb.src = this.src;
        $(this).attr('src', src).fadeIn(400);
    });
});

问题在于,用于淡入效果的覆盖层阻止您单击其下方的图像。解决方案是,不要监听图像上的点击,而是监听覆盖图上的点击,并相应地调整参考

我用叉子叉了你的代码笔来反映这一点:

JS:


先生,你是救命恩人。
$(document).ready(function() {
    $('.thumbnails .overlay').click(function() {
        var img = $(this).find('img')[0];
        var thmb = img;
        var src = img.src;
        $('.project-img img').fadeOut(400,function(){
            thmb.src = this.src;
            $(this).attr('src', src).fadeIn(400);
        });
    });
});