javascript - 使用数据属性对项目进行排序
问题描述
此函数根据main categories
和对项目进行排序sub-categories
。如果[data-color]
是 ,则将主类别的 赋予子类别文本的颜色clicked
。下面引号中的代码显示了处理子类别按钮点击的代码部分。
代码的期望行为是:如果单击sub-category button
这些子类别的项目显示。如果在它处于活动状态时再次单击它,则每个项目都会显示在该主类别下。
问题: 有时如果您单击 asub-category button
然后单击另一个,项目不会立即排序,并且[data-color]
不会传输到sub-category button
.
如果您删除注释下的行/取消选中所需的/单击工作正常,但双击该项目不会删除子类别选择。
我如何sub-category buttons
每次都点击工作并保持第二次点击子类别的能力,以通过重新处理下面引用中的代码来删除它的选择?
$(document).on("click", ".sub-cat-button", function(e) {
e.preventDefault();
if ($(this).attr("data-show-main") == "hide") {
/*required for unchecking*/
$(".cat-button.focus").trigger("click");
$(this).attr("data-show-main", "show");
} else
if ($(this).attr("data-show-main") == "show") {
$(this).attr("data-show-main", "hide");
} else {
/*also required for unchecking*/
$(this).attr("data-show-main", "hide");
}
});
这是一个代码笔。该代码使用 cookie,不会在片段中运行。
解决方案
推荐阅读
- php - 一些插件发送邮件,但其他插件不发送。PHP 邮件功能有效,但 WordPress 管理员电子邮件无效
- nativescript - NativeScipt - 仅限 Andriod 的插件
- python - 如何从源中正确加载包含多个文件的库?
- mysql - 容器中的 WordPress 无法连接到 ECS Fargate 集群上的 MySQL 容器
- git - 在 Mac 终端中使用“git push”更新我的 GitHub 存储库不起作用
- mysql - MySQL with Node:如何返回嵌套数据
- r - 如何根据变量对数据进行分组?
- c++ - C++ 表达式树遍历以将表达式更改为 NNF
- python - 如何交换数组中的二维
- swift - 如何指定 UIViewController 一个 CXProviderDelegate 将在接听电话时打开?