页面重定向不适用于jQuery中的click事件

时间:2014-09-13 14:03:02

标签: jquery redirect click

单击链接后尝试重定向页面时,单击事件下的功能不起作用。因为当我点击时,页面立即重定向而不等待执行任务。我的代码在这里:

var site = 'http://www.sitename.com';    
$(document).ready(function () {
        $('#messages').on('click', '.read', function () {

          $.cookie("show_messages", "false", { expires: 120, path: '/' });

          $('body').fadeOut(1000, function () {
              window.location.href = site + "/home-page";
          });
          return false;
        });
    });

我想设置一个cookie而不是重定向页面,但我没有管理它。你可以帮帮我吗?亲切的问候......

1 个答案:

答案 0 :(得分:0)

您的点击功能似乎存在问题,因此它永远不会进入return false;语句。我试图在jsFiddle中重现你的代码,对我来说它在$.cookie上中断了,你确定你已经包含了一个支持该方法的插件吗?它不是jQuery的一部分。

要防止出现此类问题,请先取消您的活动,然后继续执行您的代码:

$(document).ready(function () {
    $('#messages').on('click', '.read', function (event) {
        event.preventDefault();

        $.cookie("show_messages", "false", { expires: 120, path: '/' });

        $('body').fadeOut(1000, function () {
            window.location.href = site + "/home-page";
        });
    });
});

使用event.preventDefault()可以阻止点击事件,而无需return任何内容。