2017-08-31 1 views
0

Ich versuche jedes div in einem anderen div der Klasse show-gridjQuery jedes div innerhalb n-te Kind

ich zur Zeit das bin mit Ziel, aber es funktioniert nicht. Ich verwende https://github.com/liabru/jquery-match-height die Höhe der divs show-grid innerhalb jeder div der Klasse zu bekommen die gleiche Höhe zu sein

div.show-grid:nth-child(1) div 
div.show-grid:nth-child(2) div 
... 

<div class="show-grid"> 
    <a href=""> 
    <div></div> 
    </a> 
    <a href=""> 
    <div></div> 
    </a> 
    <a href=""> 
    <div></div> 
    </a> 
</div> 
<div class="show-grid"> 
    <a href=""> 
    <div></div> 
    </a> 
    <a href=""> 
    <div></div> 
    </a> 
    <a href=""> 
    <div></div> 
    </a> 
</div> 
<div class="show-grid"> 
    <a href=""> 
    <div></div> 
    </a> 
    <a href=""> 
    <div></div> 
    </a> 
    <a href=""> 
    <div></div> 
    </a> 
</div> 
<div class="show-grid"> 
    <a href=""> 
    <div></div> 
    </a> 
    <a href=""> 
    <div></div> 
    </a> 
    <a href=""> 
    <div></div> 
    </a> 
</div> 
+1

... * "jeder div" *, wie in allen von ihnen? Wenn ja, ist das nur '$ ('. Show-grid div')'? – adeneo

+0

Sie können die Child-Anchor-Tags im übergeordneten .show-grid a: nth-child (1) div {rules} wie folgt ausrichten https://jsfiddle.net/x6n7Lgeo/2/ ??? –

+0

Wollen Sie alle auf die gleiche Höhe wie die höchsten setzen, und wenn ja, ist das pro Reihe? – Popnoodles

Antwort

0

jedes div Ziel innerhalb von der div mit der Klasse .show-grid nur verwenden, um die jQuery-Selektor $('.show-grid div').

Von dort kann man sie alle machen die gleiche Höhe von CSS Anwendung:

.show-grid div { 
    height: 10px; 
} 
+0

Das ist richtig für den Selektor, aber es klingt wie OP muss die höchsten zu finden, um die Höhe der Divs, möglicherweise pro Zeile, nicht nur 10px schätzen. Klarheit ist erforderlich, bevor eine Antwort veröffentlicht wird – Popnoodles

0

Ich bin nicht ganz sicher, ob dies ist, was Sie brauchen, aber ich habe einen Weg zu verwenden, Vanille JS gezeigt Wähle jedes zweite Kind des "show-grid" div aus (du kannst dich anpassen, um das Kind zu bekommen, das du brauchst). Von dort aus ist es an Ihnen, die Höhe einzustellen je nach Bedarf:

var outerDivs = document.getElementsByClassName('show-grid'); 
 
var heightIWant = 100; 
 

 
for (var i = 0; i < outerDivs.length; i++) { 
 

 
    // every 2nd child (as an example) 
 
    if (i % 2 == 0) { 
 

 
     var innerDivs = outerDivs[i].getElementsByTagName('div'); 
 
     for (var j = 0; j < innerDivs.length; j++) { 
 
     innerDivs[j].style.height = heightIWant + 'px'; 
 
     } 
 

 
    } 
 
}
<div class="show-grid"> 
 
    <a href=""> 
 
    <div></div> 
 
    </a> 
 
    <a href=""> 
 
    <div></div> 
 
    </a> 
 
    <a href=""> 
 
    <div></div> 
 
    </a> 
 
</div> 
 
<div class="show-grid"> 
 
    <a href=""> 
 
    <div></div> 
 
    </a> 
 
    <a href=""> 
 
    <div></div> 
 
    </a> 
 
    <a href=""> 
 
    <div></div> 
 
    </a> 
 
</div> 
 
<div class="show-grid"> 
 
    <a href=""> 
 
    <div></div> 
 
    </a> 
 
    <a href=""> 
 
    <div></div> 
 
    </a> 
 
    <a href=""> 
 
    <div></div> 
 
    </a> 
 
</div> 
 
<div class="show-grid"> 
 
    <a href=""> 
 
    <div></div> 
 
    </a> 
 
    <a href=""> 
 
    <div></div> 
 
    </a> 
 
    <a href=""> 
 
    <div></div> 
 
    </a> 
 
</div>

}

} 
Verwandte Themen