页面转换,具体取决于URL

时间:2014-01-09 16:27:25

标签: javascript jquery css

此代码在转到URL的目标之前淡出每个页面。但是,在某些情况下,用户不会转到新页面,而是转到浏览器中的PDF,或者打开默认邮件应用程序。在Safari上看来,如果你去外部网站(www.twitter.com)并按下后退按钮,.wrapper仍然会消失。 (也许是缓存的东西?)

function fadeAndGo(x) {

        $(x).click(function (e) {
        e.preventDefault();
        var href = this.href;
        $('.wrapper').fadeOut(function(){
            window.location = href;

        });
        // $('.wrapper').delay()fadeIn();
    });
}

fadeAndGo('a');

是否可以:

  • 淡出,仅当网址不包含“PDF,mailto”或外部链接时才会显示?
  • 在一段时间后淡入(淡出,但在几秒钟之后消失,如果它是PDF / mailto)。

1 个答案:

答案 0 :(得分:0)

试试这个:

function fadeAndGo(x) {
    $(x).click(function (e) {
        e.preventDefault();
        var href = $(this).attr("href");
        if (!/PDF|mailto/gi.test(href)) {
            $('.wrapper').fadeOut(function () {
                window.location = href;
            }).delay(2000).fadeIn();
        } else {
             window.location = href;
        }
    });
}

fadeAndGo('a');