检测正在悬停的svg坐标
Detect svg coordinates being hovered over
我有一个SVG元素
<svg id='win-frame' style='height: 500px; width: 500px;'>
</svg>
假设鼠标悬停在svg元素上。是否有一种方法可以显示鼠标悬停在上面的点的坐标,无论是在工具提示中还是在svg下面的div中?这最好使用javascript。谢谢!
添加文本字段以显示坐标:
<input type="text" id="coords" readonly></input>
然后处理mousemove
和mouseout
事件,用坐标填充coords
输入:
/* create an svg drawing */
var draw = SVG('win-frame');
/* draw rectangle */
var rect = draw.rect(200, 200).fill('#f09')
var coordsDiv = document.getElementById('coords');
rect.mousemove(function(evt) {
coordsDiv.value = evt.clientX + ' ' + evt.clientY;
}).mouseout(function() {
coordsDiv.value = '';
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/svg.js/2.0.5/svg.js"></script>
<div id="win-frame"></div>
<input type="text" id="coords" readonly />
编辑:纯javascript解决方案
HTML部分:<svg id='win-frame' style='height: 200px; width: 200px;' >
<rect width="100%" height="100%" style="fill:rgb(0,0,255);" />
</svg>
<input type="text" id="coords" readonly />
和javascript部分:
var coordsDiv = document.getElementById('coords');
var el1 = document.getElementById('win-frame');
el1.onmousemove = function(evt) {
coordsDiv.value = evt.clientX + ' ' + evt.clientY;
}
演示小提琴:http://jsfiddle.net/7fh68sb5/2/
相关文章:
- 如何在 JavaScript 中计算 SVG 路径的椭圆路径坐标
- 使用Javascript获取SVG路径的绝对坐标
- 如何在Snap.svg中第二次单击时重置svg坐标
- 如何在 svg 中查找文本的坐标
- SVG 世界地图坐标
- 使用 jQuery 正确更改 SVG 线坐标
- 在调整窗口大小时刷新 svg 坐标
- 使用 d3 获取鼠标点击 svg 的坐标
- 如何将 SVG 对象的 X Y 坐标的中心转到平面的中心
- 直线的第一个坐标 (x0,y0) 不会影响 SVG 中的起始位置
- 如何获得svg地图的纬度和经度坐标's的起始点(x=0,y=0)
- 为什么HTML/SVG坐标0,0从左上角开始
- SVG 到屏幕坐标
- 无需绘图即可获得SVG路径坐标
- 如何计算(SVG) X/Y坐标的平移和旋转(在JS/D3.js)
- 我如何创建一个svg精灵,然后获得每个svg的坐标
- 在html文件中嵌入svg坐标的最佳方法是什么?
- Gnuplot:网站上嵌入的交互式SVG图形在缩放时显示错误的鼠标坐标
- 检测正在悬停的svg坐标
- 在平移和缩放后单击SVG坐标