@@ -565,6 +565,58 @@ public static boolean existedCSSClass(Object el, String cssClazz) {
565565 return false ;
566566 }
567567
568+
569+ public static boolean replaceCSSClassInDepth (Object el , String toBeRemovedCSSClazz , String toBeInsertedCSSClazz ) {
570+ Element e = (Element ) el ;
571+ if (toBeRemovedCSSClazz == null || toBeRemovedCSSClazz .length () == 0 || toBeInsertedCSSClazz == null ) {
572+ return false ;
573+ }
574+ replaceCSSClass (el , toBeRemovedCSSClazz , toBeInsertedCSSClazz );
575+ int length = e .childNodes .length ;
576+ boolean replaced = false ;
577+ for (int i = 0 ; i < length ; i ++){
578+ replaced = replaced || replaceCSSClassInDepth (e .childNodes [i ], toBeRemovedCSSClazz , toBeInsertedCSSClazz );
579+ }
580+ return replaced ;
581+ }
582+
583+ public static boolean replaceCSSClass (Object el , String toBeRemovedCSSClazz , String toBeInsertedCSSClazz ) {
584+ Element e = (Element ) el ;
585+ String className = e .className ;
586+ if (className == null || className .length () == 0 ) {
587+ return false ;
588+ }
589+ String [] clazz = className .split ("\\ s" );
590+ boolean existed = false ;
591+ for (int i = 0 ; i < clazz .length ; i ++) {
592+ if (clazz [i ] == toBeRemovedCSSClazz ) {
593+ existed = true ;
594+ clazz [i ] = toBeInsertedCSSClazz ;
595+ break ;
596+ }
597+ }
598+ if (existed )
599+ /**
600+ * @j2sNative
601+ * e.className = clazz.join (" ");
602+ */ {}
603+ return existed ;
604+ }
605+
606+ public static boolean removeCSSClassInDepth (Object el , String cssClazz ){
607+ Element e = (Element ) el ;
608+ if (cssClazz == null || cssClazz .length () == 0 ) {
609+ return false ;
610+ }
611+ removeCSSClass (el , cssClazz );
612+ int length = e .childNodes .length ;
613+ boolean removed = false ;
614+ for (int i = 0 ; i < length ; i ++){
615+ removed = removed || removeCSSClassInDepth (e .childNodes [i ], cssClazz );
616+ }
617+ return removed ;
618+ }
619+
568620 public static boolean removeCSSClass (Object el , String cssClazz ) {
569621 Element e = (Element ) el ;
570622 String className = e .className ;
0 commit comments