Javascript 尝试从svg获取x和y
所以我试着从图中的代码中得到点 我已经手工制作了这些牙齿,但这很费时,因为我会在乌鸦之后再去根上:( 我已经看过一些帖子了,但对我不起作用 我希望你能找到并纠正代码中的错误Javascript 尝试从svg获取x和y,javascript,html,svg,Javascript,Html,Svg,所以我试着从图中的代码中得到点 我已经手工制作了这些牙齿,但这很费时,因为我会在乌鸦之后再去根上:( 我已经看过一些帖子了,但对我不起作用 我希望你能找到并纠正代码中的错误 var pt=svg.createSVGPoint();//为文档创建一次 功能警报协调(evt){ pt.x=evt.clientX; pt.y=evt.clientY; var cursorpt=pt.matrixTransform(svg.getScreenCTM().inverse()); console.lo
var pt=svg.createSVGPoint();//为文档创建一次
功能警报协调(evt){
pt.x=evt.clientX;
pt.y=evt.clientY;
var cursorpt=pt.matrixTransform(svg.getScreenCTM().inverse());
console.log(“+cursorpt.x+”,“+cursorpt.y+”);
}
变量svg似乎没有在任何地方定义。因此没有定义pt 我不知道这是否是全部问题,但首先在pt之前插入这个=
var svg = document.querySelector('svg');
正如Haworth所说,您必须声明svg,否则他不知道要在谁身上应用
createSVGPoint
,因此,向您的svg元素id=“svg ElementID”
添加一个id并使用它
const svg=document.getElementById(“svg ElementID”);
const svg=document.getElementById(“svg ElementID”);
const pt=svg.createSVGPoint();//为文档创建一次
功能警报协调(evt){
pt.x=evt.clientX;
pt.y=evt.clientY;
var cursorpt=pt.matrixTransform(svg.getScreenCTM().inverse());
console.log(“+cursorpt.x+”,“+cursorpt.y+”);
}