2016-04-24 48 views
0

我正在使用woocommerce。當您使用產品過濾器它呈現與查詢字符串的URL(或什麼,我認爲是一個查詢字符串) http://www.webdesignui.com/looms/browse/?filtering=1&filter_collection=1481如果查詢字符串在url中,將類添加到<body>

出於某種原因,WooCommerce不會改變根據你在URL中體類。它將「檔案」作爲主體類。

我想找出一種方法來說,如果url有?filtering =,add class =「filterison」。像這樣的東西

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

它不應該是'.indexOf('filtering =')'?你不需要'a [href * =「'部分,而且你不需要其他的url。 – nnnnnn

回答

1

你在Jquery選擇器類型的語法與普通字符串indexOf方法之間混淆了。

如果要查找字符串是否有子字符串,則必須使用indexOf,它輸出主字符串內子字符串起始字符的索引。

EG:"I am a main string".indexOf('string')會給s指數作爲輸出

所以你的情況一定是

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

Hi Reddy,謝謝你的迴應。我添加了你提供的代碼,它是仍然沒有添加 -1實際上是在做,對不起新手在這裏試圖理解這一切都 – Tom

+0

這只是一種方法來檢查一個子字符串..所以當檢查一個更大的字符串中的子字符串的子字符串可以在開始時正確發生在這種情況下,IndexOf將返回0 ..所以邏輯就像0> -1 ... –

+0

Gotcha。根據您提供的代碼,如果過濾功能可用,我仍未收到添加的主體類。是否有任何想法? – Tom

0

這是最後的代碼,我能得到工作

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