2014-01-21 3 views
0

I имеют равный сценарий высоты, которая проходит по телефонуРавное высота динамически добавляемых классов

$(".row1").equalCols(); 
$(".row2").equalCols(); 

метка вверх является

<div class="grid"> 
    <div class="grid-row"> 
    <div class="item row1"></div> 
<div class="item row1"></div> 
    </div> 
    <div class="grid-row"> 
    <div class="item row2"></div> 
<div class="item row2"></div> 
    </div> 
    </div> 

Это может иметь бесконечное число грид-строк & для каждого новая строка сетки cms увеличивает число, добавленное к классу строк.

Я не хочу добавлять $ (". RowX"). EqualCols(); вызывает функцию doc.ready - я пытался найти класс, начинающийся с строки, и прокручивать все их в вызове равной высоты - что-то вроде $ (". row [x]"). equalCols(); но очень запутанная, любая помощь в решении этого будет замечательной! Заранее спасибо Джеймс

ответ

0

Поскольку все row1, row2 элементов имеет класс item использовать его

$(".grid-row > .item").equalCols(); 

Попробуйте

$(".grid-row").children(':first-child').each(function() { 
    var row = this.className.match(/row\d+/)[0]; 
    $('.' + row).equalCols() 
}); 
+0

Это не совсем работает, и его плохое из-за неправильного объяснения - мне нужно установить высоту на элементах в каждой строке сетки. это решение устанавливает одинаковую высоту для всех элементов на странице (высота взята из самого высокого предмета) – user3218750

+0

@ user3218750 в этом случае попробуйте –

+0

Спасибо, это работает – user3218750

0

вы можете использовать ниже код, который будет вызывать ' Функция equalCols для всех элементов с классом начинается с строки eg - row1, row2 ....

$('[class^="row"]').each(function(index) 
{ 
    equalcols(); 
}); 

Здесь внутри функции вы можете иметь экземпляр каждого DIV, который может быть перейти к вашей вызывающей функции, как приведено в примере ниже

$('[class^="row"]').each(function(index) 
{ 
     equalcols(this);//here 'this' is the instance of current div 
}); 

function equalcols(divInstance) 
{ 
    $(divInstance).css('height',maxHeight); 
} 

Это установит высоту каждого DIV с классом = 'rowX 'до максимальной высоты, которую вы хотите.

Смежные вопросы