Javascript 从数组中获取数字并将此数字设置为其他函数的函数
我对jquery代码有一个问题:) 情况如下:Javascript 从数组中获取数字并将此数字设置为其他函数的函数,javascript,jquery,html,Javascript,Jquery,Html,我对jquery代码有一个问题:) 情况如下: 我有一个带有数字的数组var arr 我有一个函数get_number(),它从一个 数组 我有一个带有参数内部高度(数字)的函数,它获取元素的最大高度,并将此高度设置为其他元素 但有些东西被撞坏了…:( 这是一个 HTML结构 <div id="slide-1"> <div class="inner-li"> <p>Lorem Ipsum...</p> </d
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>
从数组中获取每个数字
// Get each number from array
function get_number() {
$.each(arr, function(i, v) {
return arr[i];
});
}
获取内部li元素的最大高度
// 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);
如果有人能帮助我,我会很高兴:)试试这个可以在多个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:有几个问题:(1)您遇到了哪些错误?(2)
get\u numbers()
做什么?看起来,get\u numbers()
没有输入,没有输出,也没有副作用。是的,get\u numbers()没有输出,但为什么?我想使用这个函数get_number(),并将其作为参数设置为内部的_li_height()…我删除了我的答案,这样就不会再有孩子气的行为了。愚蠢地去争取10分吧。这应该是一个很有帮助的社区,如果一个答案对于分散注意力来说不太正确,那么就有足够的理由指出它来进行快速修复,而不是匆忙发布正确的答案来抓住一些要点。很好!:)。。。这工作正常!但我建议用两个函数来做这件事。你为什么要这么做?考虑到我是第一个正确回答了否决票的人?这两个函数get_number()和internal_li_height()可能更难,我只想知道怎么做。我没有否决票的许可。。。现在我把你的答案设置为正确。
// 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');