Javascript svg路径不可见
为什么这条路径不可见?我正在用javascript动态创建路径,但路径在屏幕上不可见,但它存在于DOM中Javascript svg路径不可见,javascript,svg,path,Javascript,Svg,Path,为什么这条路径不可见?我正在用javascript动态创建路径,但路径在屏幕上不可见,但它存在于DOM中 var svg = document.getElementById('svg'); var path = document.createElementNS('http://www.w3.org/svg', 'path'); path.setAttribute('d', 'M100,100 L100,100'); path.setAttribute('style', 'stroke:black
var svg = document.getElementById('svg');
var path = document.createElementNS('http://www.w3.org/svg', 'path');
path.setAttribute('d', 'M100,100 L100,100');
path.setAttribute('style', 'stroke:black;fill:none;');
path.setAttribute('matrix', '1,0,0,1,100,100');
svg.appendChild(path);
或者作为一个你有两个不同的问题
您正在创建一条路径,该路径的起点为
100100
(由m100100
表示),并将“线”绘制到完全相同的点(l100100
),因此您根本没有绘制线
SVG路径区分绝对坐标和相对坐标。使用大写字母表示绝对值。小写字母用于相对坐标值(相对于之前绘制或移动的坐标)
您可以使用小写字母来表示相对路径:m100100 l100100
表示从100100
开始,画一条线到一个点,该点在x方向上为100px,在y方向上为100px
或者你应该使用另一个坐标,例如:
M100100 L10110
(从100100
开始,画一条线到110110
)。正如罗伯特所说,你的线在同一点开始和结束。“M100100 L100100”指移动到100100并画一条线到100100。也许您的意思是“M100100 L100100”-注意“L”是小写的,这意味着您给出的是相对于当前位置的坐标。