Javascript 将元素的高度设置为数字的倍数?

Javascript 将元素的高度设置为数字的倍数?,javascript,jquery,html,css,Javascript,Jquery,Html,Css,有没有办法通过jquery或javascript将元素的高度拉伸到一组特定的数字?我的意思是,当它容纳更多的内容时,它的高度只会遵循数字的模式(数字的倍数) 假设是100的倍数。。。一个div的高度,因为它延伸得更高,只会在这个系列中——200px,300px,400px,等等。因此,如果它超过200的1个像素,它会自动调整到300 这很难解释 我之所以需要这个,是因为我制作了一个垂直无缝的图案,边缘撕裂,如果它能完全显示每个瓷砖的话,看起来会非常完美 我只知道基本的jquery,对于如何解决这

有没有办法通过jquery或javascript将元素的高度拉伸到一组特定的数字?我的意思是,当它容纳更多的内容时,它的高度只会遵循数字的模式(数字的倍数)

假设是100的倍数。。。一个div的高度,因为它延伸得更高,只会在这个系列中——200px,300px,400px,等等。因此,如果它超过200的1个像素,它会自动调整到300

这很难解释

我之所以需要这个,是因为我制作了一个垂直无缝的图案,边缘撕裂,如果它能完全显示每个瓷砖的话,看起来会非常完美

我只知道基本的jquery,对于如何解决这个问题我一点也不知道

我最真诚地感谢任何关心我问题的人

类似于:

$('element').css({ height : (0|(targetHeight + 99) / 100) * 100 });
如果您希望它是自动的:

$(function(){
    var $elem = $('#element')
    $elem.css({ height : (0|($(elem).height() + 99) / 100) * 100 });
});

此函数将获取当前高度和要捕捉到的单位数,四舍五入到最接近的倍数

function snapHeight(height, multipleOf) {
    return multipleOf * Math.round(height / multipleOf);
}
示例:

snapHeight(930, 100); // returns 900
snapHeight(930, 50); // returns 950
$('#element').height(snapHeight($('#element').height(), 100)); // in jQuery

@cwolves什么是
0 | targetEight
做的?@Šime Vidas-
Math.floor((targetEight+99)/100)
@cwolves
0 | x
等于
Math.floor(x)
?@Šime Vidas-是的,对于所有<2^31的数字
是一个位运算符,JS中的所有位运算都隐式转换为int
(5 | 9)==13//true
非常有趣的东西。更好:
$('div').height(函数(i,h){return Math.ceil(h/100)*100;})
snapHeight(930, 100); // returns 900
snapHeight(930, 50); // returns 950
$('#element').height(snapHeight($('#element').height(), 100)); // in jQuery