jquery - 覆盖元素的灰色效果

标签 jquery

我有这行 jQuery,一旦事件被触发,它就会禁用所有按钮。

$("button").attr("disabled", "disabled");

默认情况下,禁用的按钮呈灰色显示,但我想知道是否有一种方法可以覆盖此行为,以便禁用按钮,但不会向用户发出任何指示?

谢谢。

最佳答案

通过CSS:

一种解决方案是使用 button[disabled] css 选择器为禁用和启用按钮设置相同的样式,如下所示:

button[disabled], button{
        color:#fff;
        border: none;
        background-color: grey;
    }

问题是浏览器默认有不同的按钮样式,因此您需要设置按钮的样式。

通过 Jquery:

另一个解决方案是删除按钮的点击事件处理程序,因此替换此行:

$("button").attr("disabled", "disabled");

对于这个:

$('button').off('click');

要再次启用点击事件,请使用:

$('button').on('click');

有关此商品上的添加/删除事件处理程序的更多信息 answer在所以

注意:您应该为按钮添加 ID(如果您使用多个按钮),因为上面的代码将删除对所有按钮的点击。

关于jquery - 覆盖元素的灰色效果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13539460/

相关文章:

javascript - 如何在打开状态下切换 div 并将内容加载到 div 中?

javascript - 如何使用angularjs将匹配的行保持在表中其他行的顶部?

jquery - 将文本框中的第一个字母大写

javascript - 使用 jQuery 制作新函数 javascript(不起作用)

javascript - 按顺序将数组值附加到多个 div

javascript - 拒绝访问 IE 上的 jQuery 脚本

javascript - 正则表达式 - 用于捕获所有 href

javascript - 如何将一个 Html 页面加载到另一个页面?

javascript - 使用 onclick 事件关闭 hammer.js 触摸事件

Javascript:如何更改 contenteditable div 占位符颜色