HTML: сохранить изменения стиля (например, ширину, положение), сделанные с помощью jQuery так же чисто, как SVG? - PullRequest
0 голосов
/ 09 января 2019

Цель состоит в том, чтобы сохранить динамические изменения стиля (например, ширину, цвет фона, поворот, положение), сделанные с помощью jQuery.

С SVG это легко. Предположим, что некоторый прямоугольник составляет 50% ширины его родителя. Если вы хотите, чтобы он составлял 75%, измените атрибут width. Затем вы можете сохранить документ, и это изменение сохраняется без дополнительной работы.

50% Ширина:

<svg width="200" height="200">
  <rect width="50%" height="50%" fill="blue" />
</svg>

75% Ширина:

<svg width="200" height="200">
  <rect width="75%" height="75%" fill="blue" />
</svg>

С HTML и jQuery все по-другому. Если вы измените ширину прямоугольника с помощью jQuery следующим образом , это изменение не появится в документе.

Как сохранить эти и другие изменения стиля на сервере?

Похоже, есть два варианта, ни один из которых не выглядит таким чистым, как SVG. Есть ли альтернатива?

Вариант 1: Не используйте jQuery для изменения прямоугольника. Обновите атрибут style вручную, чтобы изменения стиля выглядели встроенными.

Вариант 2: Используйте jQuery для изменения прямоугольника, но сохраняйте изменения с помощью пользовательских атрибутов, таких как «data-width». При загрузке документа инициализируйте элементы на основе этих пользовательских атрибутов. По сути, эта опция требует дублирования функций, которые вы получаете бесплатно с SVG.

1 Ответ

0 голосов
/ 09 января 2019

Изменение свойства напрямую с помощью jQuery приведет к изменению. Когда вы используете $. Width () для изменения ширины элемента dom, эта ширина встраивается как <div style="width: 50px;"/>

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...