利用了jQuery当中fadeOut()方法中携带的delay参数和callback参数。
事先确定不要在a标签href属性里面加入一些其他奇奇怪怪的链接进去:
$(document).on("click","a",function (e) { e.preventDefault(); var newUrl = $(this).attr("href"), target = $(this).attr("target"); if (!newUrl || newUrl[0] === "#" || newUrl === 'javascript:;' || newUrl === 'javascript:void(0);') { location.hash = newUrl; return; } if(target == '_blank') { window.open(newUrl, '_blank') } else { $("html").fadeOut(120, function() { window.location.href = newUrl; }); } });