Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jsf-2/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 识别点(x,y)在svg路径内部或外部_Javascript_Svg - Fatal编程技术网

Javascript 识别点(x,y)在svg路径内部或外部

Javascript 识别点(x,y)在svg路径内部或外部,javascript,svg,Javascript,Svg,我已经关闭了这个国家的省份 如何通过javascript识别SVG路径内或外部的点(x,y)?调用文档。。如果位置在路径中,那么它将返回该元素。如果路径未填充,则可能需要调整属性,使其正常工作。其中包括路径和基本形状以及方法。它们返回给定点是在笔划中还是在填充中 例如: const svg=document.getElementById(“您的svg”); const path=document.getElementById(“您的路径”); //根据MDN,不推荐使用SVGPoint 设po

我已经关闭了这个国家的省份

如何通过javascript识别SVG路径内或外部的点(x,y)?

调用文档。。如果位置在路径中,那么它将返回该元素。如果路径未填充,则可能需要调整属性,使其正常工作。

其中包括路径和基本形状以及方法。它们返回给定点是在笔划中还是在填充中

例如:

const svg=document.getElementById(“您的svg”);
const path=document.getElementById(“您的路径”);
//根据MDN,不推荐使用SVGPoint
设point=svg.createSVGPoint();
点x=40;
点y=32;
//或者根据MDN
//设点=新点(40,32);
console.log(path.isPointInStroke(point));//真相大白
console.log(path.ispointinull(point));//显示false


您可以尝试检查这个问题,我不能使用raphael或其他库。这里有一个解决方案,它在IE或Edge中不起作用。它只会返回整个SVG。您可以尝试@Hack5,您需要使用掩码在元素上调用它,不是掩码。
未捕获类型错误:未能在“SVGGeometryElement”上执行“isPointInFill”:参数1不是“SVGPoint”类型。
Chrome似乎期待的不是MSDN所说的。@Arlo感谢您指出这一点。我改变了我的答案,这应该可以在Chrome中使用(未测试,我不使用Chrome)。