Als element bepaalde class heeft > doe iets
Ik wil graag bepaalde content NIET laden/tonen als element een bepaalde class heeft.
Voorbeeld:
Zag al wel een jquery functie (.hasClass) maar wil dit graag middels PHP oplossen.
Dus wie kan me op weg helpen?
Guido
Euh... Misschien is het makkelijker om even de toepassing van dit alles te schetsen, en dan te bepalen waar dit opgelost moet worden :s.
Ik heb een WordPress website met een pagina waarop een lijst met events staat. In de sidebar kan ook een lijst met events staan (middels een widget). Onderaan de lijst staat paginering. Ik wil de paginering volledig uitschakelen voor de lijst in de sidebar. Dit kan via css (display:none), maar dan werkt paginering nog wel (via de paginering op de pagina). Daarom wil ik het volledig uitschakelen voor de lijst die in de sidebar staat. Dus wil / probeer ik de paginering uit te zetten voor de class die de widget heeft.
Guido
Code (php)
1
2
3
4
5
6
2
3
4
5
6
var el = document.getElementById('test');
if(el.classList.contains('class3'))
{
alert('true');
}
if(el.classList.contains('class3'))
{
alert('true');
}
Met PHP moet je voorkomen dat het element aangemaakt wordt.
Gewijzigd op 17/03/2016 09:25:40 door Randy vsf
Het lijkt me dat je de functionaliteit die jij wilt uitschakelen rechtstreeks in de PHP-code dient uit te schakelen, en niet achteraf als de pagina al is gegenereerd op je beeldscherm.
Gewijzigd op 17/03/2016 11:07:29 door Ozzie PHP
Het probleem waar ik tegen aan loop is dat ik dezelfde event lijst op zowel pagina als in sidebar wil kunnen tonen. Deze lijst heeft dus ook dezelfde (css) class. Ik wil de paginering van de lijst uitschakelen indien de lijst in de sidebar van mijn site geladen wordt. Dus niet afschermen middels css maar uitschakelen. Dat dacht ik te kunnen doen door te bepalen of de bovenliggende class die van de widget/sidebar is. En zo ja, dan middels een if statement de paginering niet laden.
Mogelijk dat WordPress zelf ook iets heeft om dit te kunnen bepalen.
Guido
Gewijzigd op 17/03/2016 11:35:41 door Guido -
Een class gebruik je voor opmaak. Op het moment dat je met Javascript wil kijken of iets een bepaalde class heeft, dan is de pagina blijkbaar dus al geladen. Het enige wat je dan kunt doen is de paginering verbergen en niet uitschakelen. De paginering is er dan dus nog steeds. Als iemand css uitschakelt, zal de paginering weer zichtbaar zijn.
Bedankt voor jullie reacties.
Guido
Nee, nog niet helemaal ... je moet de paginering niet via css verbergen. Je moet er juist voor zorgen dat deze (in de sidebar) helemaal niet geladen wordt.