我遇到一些jquery代码的问题:)
案例如下:
我有一个数字 var arr 的数组。
我有一个函数 get_number(),它从中获取每个数字 阵列
但有些东西会崩溃...... :(
这是jsfiddle
HTML结构
<div id="slide-1">
<div class="inner-li">
<p>Lorem Ipsum...</p>
</div>
</div>
<div id="slide-2">
<div class="inner-li">
<p>Lorem Ipsum...</p>
</div>
</div>
<div id="slide-3">
<div class="inner-li">
<p>Lorem Ipsum...</p>
</div>
</div>
带数字的数组 //将数字保存在数组中
var arr = [];
$("div[id^='slide-']").each(function() {
arr.push(parseInt( $(this).attr('id').split('-')\[1] ));
});
从数组中获取每个数字
// Get each number from array
function get_number() {
$.each(arr, function(i, v) {
return arr[i];
});
}
获取内部元素的maxHeight
// Get max-height of inner-li and set to the others with the same class
function inner_li_height(number) {
var heights = $("div[id^='slide-" + number + "'] .inner-li").map(function () {
return $(this).height();
}).get(),
maxHeight = Math.max.apply(null, heights);
console.log(maxHeight);
$("div[id^='slide-" + number + "'] .inner-li").height(maxHeight);
}
在这里调用函数:
// Call function inner_li_height
inner_li_height(get_number);
如果有人可以帮助我,我会很高兴:)
答案 0 :(得分:-1)
尝试使用适用于多个DOM对象的单个函数:
// Get max-height of inner-li and set to the others with the same class
function inner_li_height(attr) {
$(attr).each(function(i,v) {
var heights = $(attr).map(function () {
return $(this).height();
}).get();
maxHeight = Math.max.apply(null, heights);
console.log(maxHeight);
$(attr).height(maxHeight);
});
}
inner_li_height('div[id^="slide-"] .inner-li');
jsfiddle:http://jsfiddle.net/hr993Lsj/1/