#javascript #jquery #css
Имеется элемент: let element = document.getElementById('id') Я могу изменить его css-свойство left вот так: let left = ... highlight.style.left = left + 'px'; Есть ли аналог этого, только без необходимости писать 'px'? Например, с помощью jquery можно так: $(element).css('left', left); А можно без jquery (и без 'px')?
Ответы
Ответ 1
Да. Нет. Нет. Хотя ну ладно, на последний вопрос - да: var $ = (function () { var allowNumber = ['lineHeight', 'zIndex']; function $(el) { if (this instanceof $) { this.el = el; } else { return new $(el); } } $.prototype.css = function css(key, value) { key = key.replace(/-(\w)/g, function (m, ch) { return ch.toUpperCase() }); if (+value == value && allowNumber.indexOf(key) === -1) { value += 'px'; } this.el.style[key] = value; return this; } return $; })(); $(document.querySelector("div")).css('left', 100).css('line-height', 3); div { position: absolute; left: 0; top: 0; background: silver; }123PS: Пиксели - зло.
Комментариев нет:
Отправить комментарий