Я хочу знать, какой из этих трех элементов имеет наибольшее левое значение. Это то, что у меня есть, это правильно?
var leftOne = document.getElementById('one').css.left;
var leftTwo = document.getElementById('two').css.left;
var leftThree = document.getElementById('three').css.left;
var max123 = Math.max(leftThree, leftTwo, leftOne);
Джозеф Мечтатель прав, это style.left
. Но вам также нужно преобразовать эти цифры в целые числа для функции Max
. Это мой код, который отлично работал:
Javascript:
function test() {
var leftOne = document.getElementById('one').style.left;
var leftTwo = document.getElementById('two').style.left;
var leftThree = document.getElementById('three').style.left;
var max123 = Math.max(parseInt(leftThree), parseInt(leftTwo), parseInt(leftOne));
alert(max123);
return false;
}
HTML:
<div id="one" style="left:30px">aaaaa</div>
<div id="two" style="left:22px">bbbbb</div>
<div id="three" style="left:34px">ccccc</div>
<a href="#" onclick="test()">test</a>
Результат: 34
Разве это не должно быть style
вместо css
?
document.getElementById('ID_HERE').style.left
Использование jQuery, если все div могут быть выбраны с помощью некоторого селектора (для этого он использует класс maxleft
)
var maxleft = 0;
$('.maxleft').css("left", function(idx, left) {
maxleft = Math.max(maxleft, left);
});