1

我有一个问题(令人惊讶;)):

如何在不破坏功能的情况下将 false 返回到链接?我以前在没有 jQuery 的情况下执行此操作,然后我设置了一个动画以在间隔后执行并返回 false。这次我需要该功能继续运行。

function initNavLinks(){
    navLinks = $("div#header a").click(function(){
        return false;
        processSlideReq();
    })
}

提前感谢

4

3 回答 3

6

您可能应该像这样阻止事件的默认操作:

function initNavLinks(){
    navLinks = $("div#header a").click(function(e){
        e.preventDefault();
        processSlideReq();
    })
}

您可能需要阅读 jQuery 的事件对象文档绑定文档以了解在事件处理程序中返回 false、调用 preventDefault() 和调用 stopPropogation() 之间的区别。

于 2010-10-13T13:09:41.670 回答
4

有什么理由你不能只是交换线路并执行以下操作:

function initNavLinks(){
    navLinks = $("div#header a").click(function(){
        processSlideReq();
        return false;
    })
}

?

于 2010-10-13T13:11:00.277 回答
1

出于理论上的好奇,您还可以使用JavaScript 1.7 的生成器支持(尽管它仅适用于 Firefox,不适用于链接)。

function x() {
    yield false;
    yield doSomething();
}

first_return_value = x();
second_return_value = x();
于 2010-10-13T13:31:10.407 回答