javascript - 将 return 与三元运算符一起使用不起作用

标签 javascript jquery

我最初有这样的东西:

<div class=""></div>

$(function () {
    $("div").on("click", function () {
        $(this).addClass(function () {
            if ($(this).hasClass("")) {
                return "scale";
            } else {
                return "";
            }
        });
    });
});

然后尝试使其更简单,但出现错误:

Uncaught SyntaxError: Unexpected token return

<div class=""></div>

$(function () {
    $("div").on("click", function () {
        $(this).addClass(function () {
            $(this).hasClass("") ? return "scale" : return ""; 
        });
    });
 });

我尝试将整个语句括在括号中并使用一个返回值,但我仍然收到相同的错误。

我在这里做错了什么吗?

最佳答案

你可以这样做:

$(function () {
    $("div").on("click", function () {
        $(this).addClass(function () {
            return $(this).hasClass("") ? "scale" : "";
        });
    });
});

关于javascript - 将 return 与三元运算符一起使用不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22003674/

相关文章:

c# - asp.net 从 jquery 代码生成函数

javascript - 选择选项未在 angularjs 中显示

JQUERY - 从 XML 中检索二进制 (base64) 编码的图片并在 DOM 中显示

javascript - 根据与 `<a>` 类名的比较,将类添加到 `<li>` 标签

javascript - 如何暂停/播放 JavaScript 倒计时时钟

javascript - 如何在也有现有点击绑定(bind)的表头上切换 css 类?

javascript - 更新时, Mongoose 给我一个错误 : TypeError: Cannot set property 'vidName' of null

javascript - 将 AutobahnJS (WebSockets) 与 Backbone 解耦

javascript - 如何从 JavaScript 对象中删除子字符串?

javascript - 触发的更改事件未触发 RiotJs 附加处理程序