Все сервисы Хабра
Сообщество IT-специалистов
Ответы на любые вопросы об IT
Профессиональное развитие в IT
Закрыть
Задать вопрос
Дима Паутов
@bootd
Гугли и ты откроешь врата знаний!
JavaScript
SVG
Как узнать ширину и высоту элемента path с помощью javascript?
Мне нужно узнать размер элемента path в моём svg. Но беда в том, что используя метод width(), то значение я получаю 0
Вопрос задан
более трёх лет назад
2554 просмотра
Комментировать
Подписаться
2
Оценить
Комментировать
Facebook
Вконтакте
Twitter
Решения вопроса
1
teotlu
@teotlu
Навёрстываю упущенное
clientWidth не работает, проверил.
Зато сработает
вот это
. На всякий случай тоже проверил, работает.
Ответ написан
более трёх лет назад
12
комментариев
Нравится
12
комментариев
Facebook
Вконтакте
Twitter
Дима Паутов
@bootd
Автор вопроса
А можно ваш пример? У меня не срабатывает, ошибка
Вот пример: console.log(el.getBoundingClientRect). Пишет: el.getBoundingClientRect is not a function
Написано
более трёх лет назад
Александр
@lebonnet
аналогично
jsfiddle.net/2prybs45
Написано
более трёх лет назад
Дима Паутов
@bootd
Автор вопроса
lebonnet
: такой вопрос, почему он через $('path') не хочет, а document.getElementsByTagName('path') хочет?
Написано
более трёх лет назад
Денис Инешин
@IonDen
Дима Турков
: $('path') возвращает jQuery объект, а не ноду. Чтобы из jQuery объекта эту ноду выдрать, нужно сделать так: $('path')[0]
Написано
более трёх лет назад
Александр
@lebonnet
Дима Турков
:
Денис Инешин
: у меня не получилось ни через jQuery, ни нативно, у кого заработало покажите пример.
Написано
более трёх лет назад
Евгений Петров
@Petroveg
Денис Инешин
: Самое удивительное, что getElementsByTagName вернёт коллекцию, из которой нужно дёргать узел или по индексу, или по имени...
Написано
более трёх лет назад
Денис Инешин
@IonDen
lebonnet
: вот пример на чистом JS:
jsfiddle.net/IonDen/refm825y
Написано
более трёх лет назад
Александр
@lebonnet
Евгений Петров
: точно, блин там же массив!
jsfiddle.net/2prybs45/1
Написано
более трёх лет назад
teotlu
@teotlu
jsfiddle.net/ce0twtgu/2
— вот пример. Выдрал из какого-то своего svg кусок.
Написано
более трёх лет назад
Евгений Петров
@Petroveg
lebonnet
: Только getBoundingClientRect и getClientRects — трудоёмкие операции. Выполняйте запрос 1 раз, после чего уже обращаетесь к свойствам.
Написано
более трёх лет назад
Евгений Петров
@Petroveg
lebonnet
: И getElementsByTagName вернёт коллекцию, а не массив. Похоже, но не одно и то же.
Написано
более трёх лет назад
Дима Паутов
@bootd
Автор вопроса
Многое узнал. Большое спс всем!
Написано
более трёх лет назад
Пригласить эксперта
Ответы на вопрос
1
Дмитрий
@dmitrynod
попробуй $('svg#test').get(0).clientWidth должно сработать
Ответ написан
более трёх лет назад
3
комментария
Нравится
3
комментария
Facebook
Вконтакте
Twitter
Дима Паутов
@bootd
Автор вопроса
Я исправил вопрос, мне не сам SVG элемент нужен, а его дочерние, в моем случае это элемент path!
Написано
более трёх лет назад
Дмитрий
@dmitrynod
Дима Турков
: селектор просто для примера. Так же можно выбрать path и от него уже get(0).clientWidth
Написано
более трёх лет назад
teotlu
@teotlu
Дмитрий
: это не работает.
Написано
более трёх лет назад
Ваш ответ на вопрос
Войдите, чтобы написать ответ
Войти через центр авторизации
Похожие вопросы
JavaScript
Простой
Как прочитать ответ сервера после отправки формы?
1 подписчик
17 часов назад
102 просмотра
1
ответ
JavaScript
+2 ещё
Простой
Как менять картинки у карточки в списке товаров?
3 подписчика
22 сент.
185 просмотров
1
ответ
JavaScript
Простой
Где найти исходники стандартной библиотеки JavaScript?
1 подписчик
21 сент.
236 просмотров
2
ответа
JavaScript
+2 ещё
Простой
Где найти такой слайдер?
1 подписчик
20 сент.
170 просмотров
1
ответ
JavaScript
+2 ещё
Простой
На сколько практично разделять логику загрузки данных?
4 подписчика
16 сент.
1121 просмотр
2
ответа
JavaScript
+1 ещё
Простой
Как настроить алиасы для html в Vite?
3 подписчика
14 сент.
561 просмотр
0
ответов
JavaScript
+2 ещё
Простой
Можно ли заменить кликанье мышью по веб-интерфейсу cli-командой?
3 подписчика
13 сент.
949 просмотров
2
ответа
JavaScript
+1 ещё
Простой
Как подключить библиотеку?
1 подписчик
13 сент.
598 просмотров
3
ответа
JavaScript
Простой
Как в TaigaUI сделать файлы Mb а не MiB?
1 подписчик
11 сент.
463 просмотра
0
ответов
JavaScript
+1 ещё
Простой
Как корректно обрабатывать объединённые ячейки?
2 подписчика
11 сент.
565 просмотров
0
ответов
Показать ещё
Загружается…
Вакансии с Хабр Карьеры
Senior Automation QA Engineer
OfferCase
•
Москва
от 400 000 ₽
Senior frontend developer
DigitalHR
•
Ереван
До 4 000 $
Frontend разработчик
Selecty
от 200 000 до 330 000 ₽
Минуточку внимания
Войдите на сайт
Чтобы задать вопрос и получить на него квалифицированный ответ.
Войти через центр авторизации
Закрыть
Реклама