Все сервисы Хабра
Сообщество IT-специалистов
Ответы на любые вопросы об IT
Профессиональное развитие в IT
Закрыть
Задать вопрос
Дима Паутов
@bootd
Гугли и ты откроешь врата знаний!
JavaScript
SVG
Как узнать ширину и высоту элемента path с помощью javascript?
Мне нужно узнать размер элемента path в моём svg. Но беда в том, что используя метод width(), то значение я получаю 0
Вопрос задан
более трёх лет назад
2545 просмотров
Комментировать
Подписаться
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 ещё
Простой
Как одновременно использовать npm_module на macOS и windows?
1 подписчик
вчера
158 просмотров
1
ответ
JavaScript
+2 ещё
Средний
Почему не получается обратиться к наследуемому свойству (php) через асинхронный запрос?
2 подписчика
вчера
1162 просмотра
1
ответ
JavaScript
Простой
Почему функции по смещению свойств объектов работают только с объектами, у которых свойства состоят из букв?
1 подписчик
18 апр.
99 просмотров
2
ответа
JavaScript
+1 ещё
Простой
Как в редакторе Gutenberg получить выделенный текст?
1 подписчик
18 апр.
75 просмотров
1
ответ
SVG
+1 ещё
Средний
SVG в Safari открывается криво, а в Chrome & FF — нормально. Какие еще есть реализации SVG?
1 подписчик
17 апр.
46 просмотров
0
ответов
JavaScript
+1 ещё
Средний
Как запушить объект (содержащий в себе дату и массив часов) в массив?
1 подписчик
17 апр.
93 просмотра
1
ответ
JavaScript
+1 ещё
Простой
Как прогрузить превью видео Ютуб на главной до момента прокрутки до них?
3 подписчика
16 апр.
731 просмотр
2
ответа
JavaScript
Простой
Изменение таблицы в DOM?
1 подписчик
15 апр.
129 просмотров
1
ответ
JavaScript
+1 ещё
Простой
Slick слайдер на одном пк работает, а на другом нет, почему?
1 подписчик
15 апр.
132 просмотра
1
ответ
JavaScript
+4 ещё
Средний
Как переопределить rem для Shadow DOM?
1 подписчик
14 апр.
120 просмотров
1
ответ
Показать ещё
Загружается…
Вакансии с Хабр Карьеры
Senior Frontend (JavaScript) разработчик
Vital Partners
от 350 000 до 400 000 ₽
Middle javascript разработчик
Neat-Studio
от 100 000 до 120 000 ₽
Tech Lead/ Team Lead (JavaScript)
SteadyControl
•
Воронеж
До 200 000 ₽
Минуточку внимания
Войдите на сайт
Чтобы задать вопрос и получить на него квалифицированный ответ.
Войти через центр авторизации
Закрыть
Реклама