javascript - 这个 jQuery toggleClass 行为看起来很奇怪,我这样做正确吗?

标签 javascript jquery html css

我有一个 CSS 规则用于隐藏带有 class="hidden"的元素,我正在使用 jQuery 在我单击的任何 ID 上打开和关闭此类,这样我就可以使元素消失。

为什么这不起作用?

$(this).attr('id').toggleClass("hidden");

但是这样可以吗?

var x = "#" + $(this).attr('id');
$(x).toggleClass("hidden");

我知道在第一个示例中正确使用了 id,但似乎要切换类我必须添加“#”。我还没有看到任何其他人不得不求助于此的例子,所以我想知道我在这里有什么疯狂。

非常感谢

最佳答案

$(this).attr('id').toggleClass("hidden");

您在这里链接事件。 $(this).attr('id') 已经返回了一个字符串。所以你在技术上做 "someid".toggleClass("hidden") 这没有意义。

在你的第二个例子中,你实际上是通过 id 再次选择相同的元素并触发你的方法,这是正确的

关于javascript - 这个 jQuery toggleClass 行为看起来很奇怪,我这样做正确吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43615451/

相关文章:

javascript - 使用 ng-pattern 验证密码

javascript - 如何在智能手机或移动浏览器中隐藏 div

jQuery 验证未突出显示所有字段

javascript - 如何对包含带 $ 符号的十进制值的 DataTable 列进行排序 - JQuery DataTable

javascript - Wijmo 饼图对象引用错误?

javascript - 滥用 CSS 类属性或有效的设计模式?

html - 无法将鼠标悬停在登录按钮上

javascript - 元素被绑定(bind)两次

javascript - 如何修复无法读取 free-jqgrid 中未定义的属性 'rowIndexes'

javascript - 为什么我的点击处理程序在文档就绪时运行?