将D3工具提示放置在光标位置
Placing D3 tooltip in cursor location
我在我的可视化中使用3d -tip。现在,我想将工具提示添加到非常宽的元素中,这些元素可能会延伸到可见画布之外。默认情况下,工具提示显示在对象的水平中心,这意味着在我的情况下,工具提示可能不在可见区域。我需要的是工具提示显示在光标的水平位置,但我不知道如何正确地改变工具提示的位置。我可以设置偏移量,也可以获得光标的坐标,但我无法获得工具提示的初始位置,因此我无法计算正确的偏移量。也不能设置绝对位置:
.on("mouseover",function(d){
var coordinates = [0, 0];
coordinates = d3.mouse(this);
var x = coordinates[0];
var y = coordinates[1];
tip.offset([-20,20]); // this works
tip.attr("x",40); // this doesn't
tip.show(d);
})
如果想使用偏移量,可以在tip.show(d):
之后获取工具提示的初始位置。tip.style('top');
tip.style('left');
同样,要设置绝对位置:
.on('mouseover', function(d){
var x = d3.event.x,
y = d3.event.y;
tip.show(d);
tip.style('top', y);
tip.style('left', x);
})
前面说的答案不适合我(,不能修改为"建议编辑队列已满…"),但经过一些小的调整,它工作得很好:
.on('mouseover', function(d){
var x = d3.event.x,
y = d3.event.y;
tip.show(d);
tip.style('top', y-10 + 'px'); // edited
tip.style('left', x+'px'); // edited
})
相关文章:
- 自定义函数中的光标位置
- jQuery/Javascript>on单击将文本放置在最后一个已知的光标位置
- 当用户单击按钮(在光标位置)时,在输入字段中添加一个文本字符串
- 内容可编辑分区-根据内部HTML位置的光标位置
- 保持光标位置元素在顶部使用 svg
- 保存键控触发器时保持光标位置的最佳做法
- 如何在java脚本中获取光标位置
- 获取光标位置或光标在 TinyMCE 中的行数
- 如何在每次页面重新加载时更改渐变背景,同时保持光标位置元素处于活动状态
- 在Chrome中,光标位置异常地位于输入值的末尾
- 在光标位置的文本区域中插入一个字符串,并进行一些更改
- 如何从谷歌地图事件访问光标位置(即页面的x和y轴)
- 如何在网页加载asp.net上显示文本框中第二个字母的光标位置
- 当前光标位置(百分比)
- GWT:如何从当前光标位置或所选文本中获取css样式的属性
- 在光标位置插入HTML,并使用javascript将光标移动到插入的HTML的末尾
- jQuery:使用插件Tipsy将工具提示附加到鼠标光标位置
- 不带HTML的光标位置需要转换为带HTML的位置
- 如何从内容可编辑区域获取光标位置之前的文本
- 如何在Wysihtml5沙盒编辑器中的光标位置插入文本