基本上我有一个 svg“SecondSVG”到一个 svg“FirstSVG”到一个 svg“MainSVG”。每个 svg 都有自己的 ViewBox。该页面可以由另一个页面加载到屏幕上的任何位置。
那么基本上我如何找到“SecondSVG”的 viewBox 的屏幕 x 知道这个 svg 基本上可以根据调用页面加载到任何地方?
event.clientX 为自己提供屏幕的 x 坐标。如果我不知道“SecondSVG”的 ViewBox 的坐标,那么如何找到“SecondSVG”的 ViewBox 内的 x 坐标?
我使用的是 Firefox 3.6.3,并且我有一个事件对象,我可以从中提取 clientX、clientY 和其他相对于屏幕的坐标。然而我需要的是 ViewBox 内的坐标。
function click(evt)
{
var root = document.getElementById('your svg');
var uupos = root.createSVGPoint();
uupos.x = evt.pageX;
uupos.y = evt.pageY;
var ctm = evt.target.getScreenCTM();
if (ctm = ctm.inverse())
uupos = uupos.matrixTransform(ctm);
///the new x y are : uupos.x , uupos.y
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)