手风琴上的状态依赖类名称

问题描述

所以我有这个问题,我想是在公园散步来解决

我在我正在构建的网站上使用下面的 JS 代码段,该代码段的作用是为某些 HTML 元素创建手风琴,其中类 λ PHP artisan route:list Illuminate\Contracts\Container\BindingResolutionException Target class [ProductController] does not exist. at C:\laragon\www\ProjectName\vendor\laravel\framework\src\Illuminate\Container\Container.PHP:835 831▕ 832▕ try { 833▕ $reflector = new ReflectionClass($concrete); 834▕ } catch (ReflectionException $e) { ➜ 835▕ throw new BindingResolutionException("Target class [$concrete] does not exist.",$e); 836▕ } 837▕ 838▕ // If the type is not instantiable,the developer is attempting to resolve 839▕ // an abstract type such as an Interface or Abstract Class and there is 1 [internal]:0 Illuminate\Foundation\Console\RouteListCommand::Illuminate\Foundation\Console\{closure}(Object(Illuminate\Routing\Route)) 2 C:\laragon\www\ProjectName\vendor\laravel\framework\src\Illuminate\Container\Container.PHP:833 ReflectionException::("Class "ProductController" does not exist") 是手风琴的标题(控件),而.bapf_head 是展开/折叠。

我编写了 .bapf_body 逻辑,其中函数检查 if 是否打开,然后根据状态向 .bapf_body 添加删除类。然后会产生一个 +/- 符号,根据状态指示打开/关闭

所以问题是我有多个 Div 使用相同的类名,并且当其中一个手风琴打开或关闭时,所有这些 Div 都会更新为 .bapf_head 类名。假设我有三台手风琴,我打开其中一台,然后所有三台手风琴都添加.open 类,因此即使只有一台手风琴打开,所有手风琴都得到了“-”符号。

有谁知道如何确保只有点击的手风琴获得更新的类名而不是所有的手风琴同时获得更新的类名?

下面的代码

.open

解决方法

     if ($content.is(":visible")) {
         $(this).addClass("open");
     } else {
         $(this).removeClass("open");
     };  

您需要引用与事件相关的DOM元素,而不是选择所有具有该类的元素

此外,.click() 已被长期弃用,您应该使用 .on('click',...