0

这有点难以解释,但我会尽力而为。我有一堆链接

<li><a class="various fade "  href="FOOTWEAR_SUB_PAGES/NIKE_SNOW.html"> <img src="MAIN_IMAGES/ZOOM_FORCE_2.jpg" border="0"/></a></li>                   
<li><a class="various1 fade " href="FOOTWEAR_SUB_PAGES/MERCURIAL_SUPERFLY.html"><img src="MAIN_IMAGES/MERCURIAL_SUPERFLY-2.jpg"  border="0" /></a></li>
<li><a class="various2 fade " href="FOOTWEAR_SUB_PAGES/AIRMAX_MOTO.html"><img src="MAIN_IMAGES/AIRMX-2.jpg"  border="0"  /></a></li>
<li><a class="various3 fade "  href="FOOTWEAR_SUB_PAGES/le-coq-joakim-noah.html"><img src="MAIN_IMAGES/JOAKIM-NOAH-3.jpg" border="0"  /></a></li>  
<li><a class="various4 fade "  href="FOOTWEAR_SUB_PAGES/NIKE_BMX.html"><img src="MAIN_IMAGES/GYZIRO-3.jpg"  border="0"  /></a></li>

和另一组链接

<a class="ex1 various" href="FOOTWEAR_SUB_PAGES/NIKE_SNOW.html">ZOOM FORCE ONE ///</a>            
<a class="ex1 various1" href="FOOTWEAR_SUB_PAGES/MERCURIAL_SUPERFLY.html">MERCURIAL SUPERFLY ///</a> 
<a class="ex1 various2" href="FOOTWEAR_SUB_PAGES/AIRMAX_MOTO.html">AIRMX MOTO BOOT ///</a> 
<a class="ex1 various3" href="FOOTWEAR_SUB_PAGES/le-coq-joakim-noah.html">JOAKIM NOAH ///</a> 
<a class="ex1 various4" href="FOOTWEAR_SUB_PAGES/NIKE_BMX.html">DUNK GYRIZO</a>

现在,当有人点击这些链接中的任何一个时,就会调用这个 js。

$(document).ready(function () {

$("ul#gallery li a").each(function (i, item) {         
    var url = $(item).attr("href");           
    var links = $("a.ex1.various");            
    var link = $(links.parent().find("a[href='" + url + "']"));            
    var redclass = "showing-in-gallery";           
    var gallery = $("#gallery");           
    var scroll = function () {

        link.addClass(redclass);               
        gallery.animate({ left: -1 * $(item).position().left }, 1500);           
        gallery.css("width", gallery.width() + 640 + "px");               
        $(item).parent().after('<li id="gallery_spacer" style="width: 640px;"></li>');

                imageIndex = $(".ex1").index($(this));              
                imageIndex = $(".fade").index($(this));


        setGalleryLinks();

    };

    $(this).bind("click", scroll);     
    link.bind("click", scroll);
});

如何检查是否单击了 .ex1 或 .fade?如

    if (ex1 clicked){   
        imageIndex = $(".ex1").index($(this));}
    if (fade clicked){          
        imageIndex = $(".fade").index($(this));}

任何帮助都可以挽救我的生命,我已经为此花费了数天时间。

4

3 回答 3

4

用这个:

if ($(e.target).hasClass('fade'))
    // something
else
    // something else

将事件参数添加到scroll函数:

var scroll = function (e) {
于 2012-12-29T20:14:00.330 回答
3

使用 jQuery hasClass 方法。

http://api.jquery.com/hasClass/

if($(this).hasClass('ex1'))
    // An ex1 link was clicked
else if($(this).hasClass('fade')
    // A fade link was clicked
else
    // An unknown link was clicked
于 2012-12-29T20:15:03.510 回答
1

您使用事件的目标:

$('.ex,.fade').on('click', function(e) {
   var target = $(e.target);

   // do sth with target
});
于 2012-12-29T20:16:20.483 回答