У меня есть сценарий, где мне нужно назначать значения для style.left, но все borwsers преобразуют целые числа в обозначения экспонентов, если они превосходят 1e + 06 для браузера webkit и превосходят 1e + 07 для других. Любая экспоненциальная нотация не отображается в атрибуте стиля (например, для левого, правого, для перевода и т. Д.).Javascript - предотвращение экспоненциальной нотации в стиле
Например, если я назначу на DIV этот стиль вручную:
div.style.left = 1000000+'px';
// or
div.style.left = '1000000px';
Оба возвращаются в браузере (Google Chrome, например)
<div style="left: 1e+06px;"></div>
И эта запись не работает, чтобы сделать свойство стиля. Весьма странно, что все браузеры конвертируют целое число, превосходящее 1 000 000 (или 10 000 000) в экспоненциальную нотацию в атрибуте стиля, который не поддерживает экспоненциальную нотацию ... Я попытался использовать .toPrecision() .toFixed(), и т. д., но все браузеры обрабатывают значение css после назначения значения.
Есть ли способ предотвратить такое поведение?
Почему вы используете такое большое количество? Нет изображений с миллионом пикселей. – Barmar
На экране UHD и с карусели можно легко достичь 1000000px (100-200 слайдов). Или это то же самое с небольшими номерами .... – freaky