如果我导航到另一个页面,javascript是否仍然执行?

时间:2011-08-30 14:38:45

标签: javascript

说我有这样的设置:

$('#mylink').click(function(event){
   savePost();
});

<a id="mylink" href="http://google.com">my link</a>

如果我点击该链接,我将转到另一个页面而不给该功能执行某个机会?

如果savePost()具有ajax和回调函数怎么办?无论脚本执行时浏览器的页面是什么,它都会执行吗? (或者我必须在链接上阻止默认并将window.location命令放在回调中)

3 个答案:

答案 0 :(得分:2)

首先执行脚本,然后执行window.location

答案 1 :(得分:1)

是,

在更改window.location

之前将执行

onclick脚本

关于ajax回调,我不这么认为,因为ajax和callback是异步调用,
因此,如果您只需在成功执行ajax调用后进行导航,请complete(jqXHR, textStatus)jQuery.ajax()一起使用preventDefault()回调

请参阅http://api.jquery.com/jQuery.ajax/

答案 2 :(得分:1)

致电event.preventDefault();以阻止该链接实际更改网页。否则,在执行onclick功能后页面将会改变。