Heim  >  Artikel  >  Web-Frontend  >  Verwenden Sie JS, um die jQuery-Funktionen „addClass“, „removeClass“ und „hasClass“ zu implementieren

Verwenden Sie JS, um die jQuery-Funktionen „addClass“, „removeClass“ und „hasClass“ zu implementieren

WBOY
WBOYOriginal
2016-05-16 16:32:341347Durchsuche

Kein weiterer Unsinn, kommen wir direkt zum Code

Code kopieren Der Code lautet wie folgt:

Funktion addClass(obj, cls){
var obj_class = obj.className,//Klasseninhalt abrufen.
Blank = (obj_class != '') ? ' ' : '';//Bestimmen Sie, ob die erhaltene Klasse leer ist, wenn nicht, fügen Sie ein 'Leerzeichen' voran.
hinzugefügt = obj_class blank cls;//Kombinieren Sie die ursprüngliche Klasse und die Klasse, die hinzugefügt werden muss.
Obj.className = hinzugefügt;//Ersetze die ursprüngliche Klasse.
}

Funktion removeClass(obj, cls){
var obj_class = ' ' obj.className ' ';//Holen Sie sich den Klasseninhalt und fügen Sie am Anfang und Ende ein Leerzeichen hinzu, z. B. 'abc bcd' -> obj_class = obj_class.replace(/(s)/gi, ' '),//Ersetzen Sie das zusätzliche Nullzeichen durch ein Leerzeichen ex) ' abc bcd ' -> ' abc bcd '
Removed = obj_class.replace(' ' cls ' ', ' ');//Ersetzen Sie die Klasse durch Leerzeichen am Anfang und Ende der ursprünglichen Klasse ex) ' abc bcd ' -> 'bcd ' Removed = Removed.replace(/(^s )|(s $)/g, '');//Entferne führende und nachfolgende Leerzeichen ex) 'bcd' -> Obj.className = entfernt;//Ersetze die ursprüngliche Klasse.
}

Funktion hasClass(obj, cls){
var obj_class = obj.className,//Klasseninhalt abrufen.
Obj_class_lst = obj_class.split(/s /);//Konvertieren Sie cls in ein Array, indem Sie das Nullzeichen aufteilen.
x = 0;
for(x in obj_class_lst) {
If(obj_class_lst[x] == cls) {//Schleife das Array, um zu bestimmen, ob es cls enthält
             return true;
}
}
Gibt false zurück;
}


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn