Avatar billede Morten Professor
06. februar 2018 - 19:33 Der er 2 kommentarer

Jquery if body hassClass then do....

Hej Eksperter

Jeg har lige et spørgsmål, hvordan får jeg denne til at virke

// Breadcrumb
$(document).ready(function () {
  if ($("body").hasClass("product-template-default single single-product postid-132 wp-custom-logo woocommerce woocommerce-page storefront-full-width-content right-sidebar woocommerce-active sp-header-active sp-max-width sp-shop-alignment-center")){
    $("nav").hasClass('.woocommerce-breadcrumb').addClass('.woocommerce-breadcrumb_produkt');
  }
)
};

Har en brødkrumme der skal føres længere op på en ny side med body class="product-template-default single single-product postid-132 wp-custom-logo woocommerce woocommerce-page storefront-full-width-content right-sidebar woocommerce-active sp-header-active sp-max-width sp-shop-alignment-center" på den side skal min class=".woocommerce-breadcrumb" laves om til en ny class.
Kan ikke rigtig få det til at spille der sker ikke noget.

Med venlig hilsen
Morten
Avatar billede keysersoze Guru
06. februar 2018 - 23:42 #1
I stedet for at benytte JavaScript til det ville jeg i stedet benytte css - kan du ramme body med hasClass kan du også omskrive ovenstående til ren css og er det vigtigt at klassen bliver sat på fremfor at du bare overskriver så skulle det måske klares i PHP i stedet.

Hvis du vil fortsætte i dit nuværende spor så sørg som det første for at validere at din hasClass fungerer fx gennem din developer toolbar - hasClass er lidt sensitiv fx i forhold til rækkefølge når du har mere end én klasse på. Derudover så mener jeg at hasClass bare returnerer en boolean og den kan du ikke benytte addClass på så det inde i din if skal nok nærmere se sådan ud $("nav.woocommerce-breadcrumb").addClass('.woocommerce-breadcrumb_produkt');
Avatar billede Morten Professor
07. februar 2018 - 09:17 #2
Ser jeg som en god løsning, syntes også det går for langsomt med jquery fandt frem til en metode igår ved at finde et andet sted at trække fra hvor der kun er en class. men det går noget langsomt enden den opfatter det.

Det med php kan jeg ikke rigtig fange, da det er på en side for sig selv under woocommece plugin, ikke et template i storefront det er under single produktet, eller tager jeg fejl, kan jeg gøre det på en eller anden måde i function
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester