Stellen Sie sich das vor:
Seite A enthält dies in body
:
Seite B enthält:
%Vor%Ich kann dieses Skript verwenden, um zu identifizieren, ob sie eine Overlay-Klasse enthalten:
%Vor% Für den Rückgabewert, anstelle von "Es funktioniert", wie bekomme ich es, um den Rest des Klassennamens z. "Overlay-Ergebnisse" oder wenn Bedarf der gesamte div
Inhalt ist, z.B. " <div class="overlay-results"><span></span></div>
"?
Es gibt viele andere Seiten wie diese mit verschiedenen 'overlay-' Klassennamen, also möchte ich nicht eine Suche nach jedem dieser 'One size fits all' Methode machen.
Sie können diesen jQuery-Selektor verwenden, zum Beispiel
Dies wird dir Elemente geben, die overlay
irgendwo in ihrem Klassennamen haben.
$('div[class*=overlay]')
Dies gibt Ihnen Elemente, deren Klassenname mit overlay
beginnt.
$('td[class^=overlay]')
Dies gibt Ihnen Elemente, deren Klassenname mit overlay
endet.
$('td[class$=overlay]')
BEARBEITEN:
Um dies in Ihrem Code zu verwenden, können Sie Folgendes tun:
%Vor%Diese Funktion fi nd die Elemente mit dem Overlay in ihrem Klassennamen a gibt den vollständigen Klassennamen zurück.
Um ein Element auszuwählen, mit dem beginnt , verwenden Sie ^
like [class^="overlay-"]
.
Um alle Elemente mit dem startenden class
zurückzugeben, können Sie: -
oder um die Klasse zurückzugeben, wenn es nur eine gibt, können Sie verwenden: -
%Vor%oder wenn es mehrere Klassen gibt, verwenden Sie: -
%Vor%Wenn ich richtig verstehe, möchten Sie die full-Klasse , die mit der Überlagerung übereinstimmt, und nicht den Wert der Attributklasse für das Element. Indem wir eine partielle Attributsuche mit einem Selektor durchführen, können wir alle Elemente erhalten, die mit dieser Suche übereinstimmen, dann durch sie hindurchgehen und aus ihren Klassen diejenigen extrahieren, die der partiellen Klasse give entsprechen.
%Vor% Würde ausgeben: [overlay-homepage,overlay-results]
oder was auch immer auf der Seite ist, wenn Sie nur ein Ergebnis wollen, können Sie einfach getFullClass("overlay-")[0]
Verwenden Sie einfach .find()
in jquery.
%Vor%Ermittelt die Nachkommen jedes Elements in der aktuellen Treffermenge Elemente, gefiltert durch einen Selektor, ein jQuery-Objekt oder ein Element.
Mit der SMACSS-Methodik ( Ссылка ) können Sie verschiedene Bereiche Ihrer Site basierend auf dem Layout und der Struktur modularisieren. Das Layout der Seite erhält Klassen auf oberster Ebene, die grundlegende und generische Stile anwenden, und alle seitenspezifischen Stile werden durch Namen-getrennte Klassen angewendet. Zum Beispiel haben alle Überlagerungen die Klasse .ovr
, die anzeigt, dass es sich um ein Overlay handelt und .ovr-homepage
, .ovr-results
Klassen und einzigartige Stile gelten.
Sie können dann alle Overlay-Module mit $('body .ovr');
oder spezifische Overlays mit $('body .ovr-homepage');
oder $('body .ovr.ovr-homepage');
erhalten.
Anstatt es mit JS zu überkompensieren, kann es mit CSS Struktur und Organisation gelöst werden.
Tags und Links javascript jquery css