我有一个像这样的功能
$(function(){
$("selector").on("click", "selector", function(e){
e.preventDefault();
var url = $(this).attr("href");
//run code here then in the callback send the url.
});
});
基本上我不想使用setTimeout,但我希望日志文件在触发window.location.href = url之前完成其日志;
这可以通过点击事件来实现。
答案 0 :(得分:1)
尝试使用jquery done()
$(function(){
$("selector").on("click", "selector", function(e){
e.preventDefault();
var url = $(this).attr("href");
var dfd = $.Deferred();
dfd
.done( function(){//log code} )
.done(function() {
window.location.href=url
});
});
});
答案 1 :(得分:0)
您可以使用beforeUnload
jQuery事件在进入下一页之前执行任何特殊技巧。
$('selector').click(function() {
$(window).bind('beforeunload', function() {
var url = $(this).attr("href");
//run code here then in the callback send the url.
});
});