Как изменить текст и аттрибут текста в svg с помощью js

297
05 сентября 2017, 11:56

Всем добра! Имеется такая задача: Есть график нарисованный с помощью svg в этом графике есть подписи вида <text ...></text>, необходимо если число отрицательное - покрасить его в красный. Пробовал через $('text').each(); Но ничего не выходит( айдишники приписать к ним тоже нет возможности.

Подскажите пожалуйста как можно перебрать все текстовые элементы в svg

Answer 1

$('text').each() отлично работает.

$('text').each(function () { 
  if ( +$(this).text() <= 0 ) { 
    $(this).attr('fill', 'red'); 
  } 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<svg> 
  <text x="0" y="15" font-family="Verdana" font-size="15">1</text> 
  <text x="0" y="35" font-family="Verdana" font-size="15">2</text> 
  <text x="0" y="55" font-family="Verdana" font-size="15">11</text> 
  <text x="0" y="75" font-family="Verdana" font-size="15">-1</text> 
  <text x="0" y="95" font-family="Verdana" font-size="15">-6</text> 
</svg>

READ ALSO
Как задать имя таблицы для модели в PHPixie?

Как задать имя таблицы для модели в PHPixie?

Внимание! Этот вопрос является переводом вопроса: How can I specify the database table name for a model in PHPixie?

286
PHP отправка сообщений в jabber

PHP отправка сообщений в jabber

Есть скрипт входа на сайт, но до меня не доходит, как сделать отправку сообщения с кодом в jabber?Попробовал использовать библиотеку XMPP но чет...

425
Почему не создаётся статья? (yii2 -advanced)

Почему не создаётся статья? (yii2 -advanced)

Imagik вроде бы установлен уже в папке vendor в проекте, в настройках Open Server PHP-70, Apache-7 MySQL-5

256
Авторизация по e-mail [требует правки]

Авторизация по e-mail [требует правки]

Помогите пожалуйста переделать данный код чтобы принимал email и логин

198