JavaScript: Bibliothek - Remove ClassName mit Objekt
Ich möchte jetzt unsere bib_oop.js um die oben vorgestellte Funktion erweitern:
moveClass()
Unsere Methode erwartet zwei Parameter:
- Selektor
- className
bib_oop.js:
function moveObj(){
...
this.moveClass = function( el , cl ){
const myEl = this.elem( el );
// Wenn ein Array geliefert wird
if ( myEl.length > 1 ) {
myEl.forEach( el => {
el.classList.remove( cl );
});
}else{
myEl.classList.remove( cl );
}
}
}
// Initialisierung
const bib = new getObj();
Der Aufruf: bib.moveClass( 'selektor' , 'className' ) wie Oben schon gezeigt.
Wenn Ihr Anregungen oder Kommentare habt, seid so nett und kontaktiert mich unter: Kontakt
Kopiert Euch gerne den Code und probiert es aus: Code
Kopiert Euch die gesamte bib_oop.js als bib_oop.txt: Code
Beispiel
Multi-ClassName
Multi-ClassName
Multi-ClassName
Multi-ClassName
Code
HTML: <div id="wrapper" class="my-wrapper"> <div class="multi-class classYellow">Multi-ClassName</div> <div class="multi-class classYellow">Multi-ClassName</div> <div class="multi-class classYellow">Multi-ClassName</div> <div class="multi-class classYellow">Multi-ClassName</div> </div> <br> <button class="ancor_button" onclick="bib.moveClass('.multi-class','classYellow')"> classYellow löschen </button> <button class="ancor_button" onclick="bib.setClass('.multi-class','classYellow')"> classYellow setzen </button>
CSS: .classYellow{ color: yellow !important; } .classRed{ color: red !important; }
JavaScript: bib_oop.js: /* START::: getObj() */ function getObj(){ // die Methode elem übernimmt an dieser Stelle die Arbeit this.elem = function( identifier ) { // Element speichern const myElem = document.querySelectorAll( identifier ); // Rückgabe des Elementes if ( myElem.length === 1 ) { // Element ist eindeutig => ID oder // es wurde nur ein Element gefunden return myElem[0]; } else { // Mehrere Elemente vorhanden => Rückgabe Array return myElem; } }; /* ENDE::: getObj() */ ... /* START::: Remove Class */ this.moveClass = function( el , cl ){ const myEl = this.elem( el ); // Wenn ein Array geliefert wird if ( myEl.length > 1 ) { myEl.forEach( el => { el.classList.remove( cl ); }); }else{ myEl.classList.remove( cl ); } } /* ENDE::: remove Class */ } /* ENDE::: getObj() */ // Initialisierung const bib = new getObj();