| Autor | Zpráva | ||
|---|---|---|---|
| Mufna Profil |
Zdravím Vás. Potřebuji pomocí javascriptu najít rodičovský (resp. nejbližší nadřazený) element typu <div> a nastavit mu CSS. Přesněji řečeno, potřebuji pomocí JS změnit styl stávající třídě "content", pokud za divem s touto třídou následuje div s třídou "basket".
HTML: <div class="content"> <div class="basket"> .... nějaký další kód </div> </div> Javascript (ten potřebuji upravit, aby to fungovalo): $(function() {
var page = $(location).attr('pathname');
var basket = page.match(/basket/g);
if (basket) {
// tenhle kód je nefunkční
var parentTag = $(".content > .basket").parent().get(0).tagName;
parentTag.css({"float":"none","width":"100%"});
} |
||
| anonymníí Profil * |
#2 · Zasláno: 27. 10. 2015, 11:17:11
Mufna:
Nejsem JavaScriptař, nicméně v proměnné parentTag máš, pokud něco, string div, tuším, že i velkými písmeny.
Mělo by to být (symbolicky) asi takto: var x = $(...).parent();
if (x.get(0).tagName == 'DIV') {
x.css(...); // tady radeji druhou tridu nez prime css
}Nevím ale, jestli můžeš takhle míchat jQuery s čistým JS ( .parent() vs. tagName), možná ano.
|
||
| Mufna Profil |
anonymníí:
díky za radu, zkusím to upravit ... takže můžu pak vlastně udělat toto, že ? if (x.get(0).tagName == 'DIV') {
x.addClass(...);
}Tak jsem to vyřešil, jde to ještě jednodušeji :-) if (basket) {
$(".basket").parent(".content").css({"float":"none","width":"100%"});
} |
||
|
Časová prodleva: 11 let
|
|||
0