Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/427.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 当子类具有特定类时,jQuery将类切换为父类_Javascript_Jquery_Html - Fatal编程技术网

Javascript 当子类具有特定类时,jQuery将类切换为父类

Javascript 当子类具有特定类时,jQuery将类切换为父类,javascript,jquery,html,Javascript,Jquery,Html,我正在使用这个框架来制作iPhone应用程序的原型 在Ratchet中,它们有使用类toggle和onclick(或tap)的,它使用toggle和active 使用jQuery,我如何将一个类切换到父元素,这样当切换使该类处于活动状态时,它将向父元素添加一个类(比如说切换为活动状态),而当该类未处于活动状态时,它将删除并添加该类。我一直在研究几种不同的方法,比如if语句,onclick,但我没有发现任何有效的方法 例如,这就是我所尝试的: jQuery $(".toggle.active").

我正在使用这个框架来制作iPhone应用程序的原型

在Ratchet中,它们有使用类
toggle
和onclick(或tap)的,它使用
toggle
active

使用jQuery,我如何将一个类切换到父元素,这样当切换使该类处于活动状态时,它将向父元素添加一个类(比如说
切换为活动状态
),而当该类未处于活动状态时,它将删除并添加该类。我一直在研究几种不同的方法,比如if语句,onclick,但我没有发现任何有效的方法

例如,这就是我所尝试的:

jQuery

$(".toggle.active").click(function() {
    $(this).parent().parent().toggleClass("toggle-active");
});
加价

<div class="toggle"><div class="toggle-handle"></div></div>


是问题还是函数?

单击。。使用
hasClass
检查它是否有活动的类,如果是,则将所需的类添加到父级。父级。。如果没有,请删除它

试试这个

 $(".toggle").click(function() {
   if($(this).hasClass('active'){
     $(this).parent().parent().addClass("toggle-active");
     //or $(this).parents().eq(2).addClass("toggle-active"); //for find() or closest()

   }else{
     $(this).parent().parent().removeClass("toggle-active");
   }
});

使用
closest()
代替
parent()。是因为点击功能吗?Ratchet的切换可能有问题,因为你不能在桌面上单击它们,但可以在移动设备上点击它们。如果没有看到一些HTML,就无法回答这个问题HTML非常棒,现在将它编辑成人们可以看到的问题。