JS If / Else使类忽略特定的JS

时间:2013-01-16 21:04:32

标签: jquery if-statement

基本上我写了一些自定义JS来在页面之间进行淡入/淡出。脚本本身效果很好,所以当我点击任何新链接时,内容会淡出并淡入新页面。我遇到麻烦的是,当我点击像“mailto:someone@gmail.com”这样的链接时,它会加载电子邮件程序,但网站淡出仍然没有淡入内容。我想要的是使某些链接成为我可以添加到JS的类,所以当它们被点击时我的淡化JS不会加载,链接将按原样工作,没有JS。我想我可以将它包装在if / else语句中,如:

if (.thisclass).clicked
 {not load the below JS}
else
 { here is my original JS}

这是我的代码:

     //  Menu Animation
    $(function() {
    $("#menu").css("display", "none");

    $("#menu").fadeIn(500);

    $("a").click(function(event){
        event.preventDefault();
        linkLocation = this.href;
        $("#menu").delay(400).fadeOut(500, redirectPage);      
    });

    function redirectPage() {
        window.location = linkLocation;
    }
});
   $(function (){
       $("#menu").addClass("visible");

//  mainFade Animation 
});
    $(function() {
    $("#mainFade").css("display", "none");

    $("#mainFade").delay(400).fadeIn(500);

    $("a").click(function(event){
        event.preventDefault();
        linkLocation = this.href;
        $("#mainFade").fadeOut(500, redirectPage);      
    });

    function redirectPage() {
        window.location = linkLocation;
    }
});
   $(function (){
       $("#mainFade").addClass("visible");
});

//  Slogan Animation 

    $(function() {
    $("#line1").css("display", "none");

    $("#line1").delay(800).fadeIn(500);


});
$(function() {
    $("#line2").css("display", "none");

    $("#line2").delay(1400).fadeIn(500);


});
$(function() {
    $("#line3").css("display", "none");

    $("#line3").delay(1600).fadeIn(500);


});

$(function() {
    $("#demo").css("display", "none");

    $("#demo").delay(2100).fadeIn(500);


});

以下是该网站的链接供参考。联系页面有一些Mailto链接。

The Site

1 个答案:

答案 0 :(得分:0)

您可以将$("a").click(function(event){个功能更改为$("a").not('.email-class').click(function(event){。这将在任何没有email-class类的链接上触发动画。