Jquery参数在函数之间传递

时间:2011-04-08 18:43:35

标签: javascript gallery image-gallery

我需要在这个函数中传递2个变量(nextimage,previmage)

$("a.lightbox").click(function abc(e) {
    var nextimage = $(this).parent().next().children('a').attr('href');
    var previmage = $(this).parent().prev().children('a').attr('href');
    return nextimage;
    return previmage;
});

它们应该像

一样传递给这个函数
function nextimage(){
    $('<img src="nextimage"/>')
}

非常感谢任何帮助

2 个答案:

答案 0 :(得分:1)

我认为这就是你要找的......

$("a.lightbox").click(function(e) {
    var nextimage = $(this).parent().next().children('a').attr('href');
    var previmage = $(this).parent().prev().children('a').attr('href');

    nextimage(nextimage, previmage);
});


function nextimage(nextimage, previmage){
    $('<img src="nextimage"/>')
}

虽然可能不需要函数调用...取决于您的应用程序。

答案 1 :(得分:0)

我得到了更好的解决方案。检查一下:

参考:Previous Question

<div>
<ul class="listing">
        <li><a href="imgs/eli.jpg" id="1" class="lightbox"><img src="thumbs/eli_t.jpg" width="150" height="100" class="images" /></a></li>
        <li><a href="imgs/ggallin.jpg" id="2" class="lightbox"><img src="thumbs/ggallin_t.jpg" width="150" height="100" class="images" /></a></li>
        <li><a href="imgs/jontarata.jpg" id="3" class="lightbox"><img src="thumbs/jontarata_t.jpg" width="150" height="100" class="images" /></a></li>
        <li><a href="imgs/macka s tatuirovki.jpg" id="4" class="lightbox"><img src="thumbs/macka s tatuirovki_t.jpg" width="150" height="100" class="images" /></a></li>
        <li><a href="imgs/mk7.jpg" id="5" class="lightbox"><img src="thumbs/mk7_t.jpg" width="150" height="100" class="images" /></a></li>
        <li><a href="imgs/P5010345.jpg" id="6" class="lightbox"><img src="thumbs/P5010345_t.jpg" width="150" height="100" class="images" /></a></li>
    </ul>
<a id="prev">Prev</a>
<a id="next">Next</a>
</div>
<img id="currentImage"></img>

<script type="text/javascript">
(function() {
    var index = 0;
    var showImage = function(i) { 
        var url = $("ul.listing a").eq(i).attr("href"); 

        $("#currentImage").attr("src", url);
        index = i;
    };
    $("#prev").click(function() {
        showImage(index - 1);
    });

    $("#next").click(function() {
        showImage(index + 1);
    });

    $("ul.listing a").click(function() { var i = $(this).index(); showImage(i); });
})();
</script>