Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/387.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/85.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 在我刚刚单击的链接之后选择链接_Javascript_Jquery - Fatal编程技术网

Javascript 在我刚刚单击的链接之后选择链接

Javascript 在我刚刚单击的链接之后选择链接,javascript,jquery,Javascript,Jquery,还把它扔到了jsbin上: 但是jsbin上的代码是旧代码,所以overlay_nextimg是overlay_content Jquery lightbox,从我们刚刚单击的链接中抓取下一个链接,获取它的href,淡出当前图像,并加载下一个img 另外,我将如何保持覆盖内容的中心?更改图像时,是否将其设置为新位置的动画?下一步我会解决的,但我在这里,为什么不呢 Jquery和Html,我已经更改了覆盖内容。单击我们以前使用的覆盖内容,以减少混淆 Jquery: $(function (){

还把它扔到了jsbin上: 但是jsbin上的代码是旧代码,所以overlay_nextimg是overlay_content

Jquery lightbox,从我们刚刚单击的链接中抓取下一个链接,获取它的href,淡出当前图像,并加载下一个img

另外,我将如何保持覆盖内容的中心?更改图像时,是否将其设置为新位置的动画?下一步我会解决的,但我在这里,为什么不呢

Jquery和Html,我已经更改了覆盖内容。单击我们以前使用的覆盖内容,以减少混淆

Jquery:

$(function (){ 
$('a.lightbox').click(function() {  
    var imghref = $(this).attr("href"); 
    loadImage(imghref); 
    alert(imghref)
    return false; 
});  

$('.overlay_nextimg').click(function (){
    var currlink = $("a[href='" + $(".overlay_content img").attr("src") + "']");
    var nextlink = $(currlink).next(".lightbox");
    var prevlink = $(currlink).prev(".lightbox");
    alert(nextlink);
    loadImage(nextlink);
    });

$('.overlay_previmg').click(function (){
    var currlink = $("a[href='" + $(".overlay_content img").attr("src") + "']");
    var nextlink = $(currlink).next(".lightbox");
    var prevlink = $(currlink).prev(".lightbox");
    alert(prevlink);
    loadImage(prevlink); 
    });

function loadImage(href, prevlink, nextlink) { 
var currentImg = $('.overlay_content img');
    var img = new Image(); 
    var docHeight = $(document).height();
    $('.overlay_content').delay(300).fadeIn(400);
    $(".overlay_bg").height(docHeight).fadeIn(400, function(){ 
    $(img).load(function () { 
        $(img).hide(); 
        $('.overlay_content').html(img); 
        $(img).fadeIn('slow');
    }).error(function () { 
        $('.overlay_content').html("you SUCK at Javascript")
    }).attr('src', href); 
        })   
}

$('.overlay_bg').click(function (){
    $(this).fadeOut(300);
    $(".overlay_content").fadeOut(300, function(){
        $(this).html('');
    });
});              
});
HTML:


链接

请添加更多代码/HTML-Is$(“覆盖内容”)。单击(…)需要修复的函数

您可以使用eq()选择器获取页面上的第n个a.lightbox。但很明显,你需要跟踪你当前的链接,即

$("a.lightbox:eq(1)") 
或者-使用当前显示的图像的src,找出单击了哪个链接并从那里移动下一步,即

$("a.lightbox[href='" + currentImg.attr("src") + "']").next()

我们丢失了这么多重要的信息。处理链接的click方法在哪里?加载映像函数实际上是做什么的。显示图像时DOM是什么样子的。如果我们知道这些,您的问题可能会在一分钟内得到回答。请再次更新代码以包含您给我的内容。现在,当单击下一个或上一个链接时,它会在警报中显示“object object”,然后在overlay_contents div中显示错误,而不是显示下一张图片。
$("a.lightbox[href='" + currentImg.attr("src") + "']").next()