2016-04-24 3 views
0

Ich arbeite mit Woocommerce. Wenn Sie die Produktfilter verwenden macht es eine URL mit einem Query-String (oder was ich denke, ist eine Abfrage-String) http://www.webdesignui.com/looms/browse/?filtering=1&filter_collection=1481Klasse hinzufügen zu <body>, wenn Query String in URL ist

Aus irgendeinem Grund auf WooCommerce nicht den Körper Klasse ändern Sie basierend auf der URL sind. Es behält das "Archiv" als Körperklasse.

Ich würde gerne einen Weg finden zu sagen, ob die URL hat? Filtering =, add class = "filison". So etwas wie dies

<script> 
$(document).ready(function() { 
    if(url.indexOf('a[href*="/looms/browse/?filtering=1') > -1){ 
     $("body").addClass("filterison"); 
    } 
}); 
</script> 
+0

Sollte es nicht '.indexOf ('filtering =')' sein? Du willst nicht das 'a [href * =" 'Teil, und du brauchst nicht wirklich den Rest der URL vor dem? Entweder. – nnnnnn

Antwort

1

Sie sind verwirrt zwischen JQuery-Selektor Art der Syntax mit normaler Zeichenfolge indexOf Methode.

Wenn Sie herausfinden möchten, ob ein String einen Teilstring hat, müssen Sie indexOf verwenden, der den Index des Anfangszeichens des Teilstrings innerhalb des Hauptstrings ausgibt.

Beispiel: "I am a main string".indexOf('string') den Index von s als Ausgang

Also in Ihrem Fall gibt es

sein muss
$(document).ready(function() { 
    if(url.indexOf('/looms/browse/?filtering=1') > -1){ 
     $("body").addClass("filterison"); 
    } 
}); 
+0

Hallo Reddy, danke für die Antwort. Ich habe den Code hinzugefügt und es ist immer noch nicht hinzufügen -1 tatsächlich tun, tut mir leid Neuling hier zu versuchen, Sinn zu machen – Tom

+0

Es ist nur eine Möglichkeit, nach einem Teilstring zu suchen .. Wenn also nach einem Teilstring in einem größeren String gesucht wird, kann der Teilstring direkt am Anfang auftreten.In diesem Szenario gibt IndexOf 0 zurück. Die Logik ist also wie 0> -1 ... –

+0

Auf der Grundlage des von Ihnen angegebenen Codes bekomme ich immer noch nicht die Body-Class hinzugefügt, wenn die? -Filterung verfügbar ist. Irgendwelche Ideen? – Tom

0

Dies ist der letzte Code war ich in der Lage war zu arbeiten zu bekommen

<script type="text/javascript"> 
$(document).ready(function() { 
    if(window.location.href.indexOf("?") > -1) { 
     $("body").addClass("filterison"); 
    } 
}); 
</script>