Захват атрибутов дочернего элемента SVG

  • Автор темы msk-electro21
  • 31
  • Обновлено
  • 13, May 2024
  • #1
Привет, ребята, я пытаюсь выяснить, можно ли получить высоту и ширину . К сожалению, и , похоже, их не имеют, и мне было интересно, есть ли способ сделать это. На данный момент у меня есть:
 

(function(){

"use strict";

window.onload = function() {

polygoChk();

};

function polygoChk() {

var polu = document.getElementsByClassName('polu3')[0];

var polyHeight = polu.getAttribute('width');

console.log(polyHeight+ " polygon width");

};

})();

Код (разметка):
  <svg class="polu" preserveAspectRatio="xMidYMid meet" viewBox="0 0 100 100" width="300px" height="300px"> <a class="polu2" xlink:href="deviantart.com" > <polygon class="polu3" fill="red" stroke="brown" points="45,2 2,45 45,88 88,45"/> </a> </svg> 
Код (разметка): возвращает ноль или 0 в зависимости от того, что я использую.

Итак, я думаю, если я не смогу получить размеры , есть ли способ захватить рамку аспекта вокруг ?

msk-electro21


Рег
06 Feb, 2015

Тем
1

Постов
3

Баллов
13
  • 07, Jun 2024
  • #2
Ваша проблема в том, что вы используете px там, где их быть не должно: width="300px" height="300px"> Без пикселей (200x200):
https://jsfiddle.net/5mHjC/222/

Или вы можете сделать то же самое, задав CSS классу polu (100pxx100px):
https://jsfiddle.net/5mHjC/225/
 

Roo1


Рег
27 Sep, 2014

Тем
1

Постов
2

Баллов
12
Тем
49554
Комментарии
57426
Опыт
552966

Интересно