问题描述:

使用d3绘制了个关系图,在表示关系的链接上有文本说明,想通过双击文本实现查看详情操作,但无论对文本元素Text添加双击(dblclick)还是单击(click)事件监听都不能触发。

解决方法:

去掉链接文本的样式:


pointer-events: none;

解决过程:

首先想到的是不是因为浏览器兼容性Text不支持鼠标事件监听,所以就通过控制台手工添加了几个Text验证,验证通过。

又怀疑是不是跟用了TextPath有关,再次验证通过。

好久没用过SVG了,是不是原来开发者设置了某些属性。查看MSDN SVG文档发现属性:pointer-event比较可疑

pointer-events

The pointer-events attribute is a presentation attribute that allows defining whether or when an element may be the target of a mouse event.

查看JS源码是否设置了此属性,没有找到.

通过浏览器开发者工具查看链接文本Text使用的css样式。终于找到了。

去掉样式后可以正常点击。


扩展:

有时候一个图形的上面需要显示一段文本说明,当点击文本的时候我们希望触发图形的点击事件而不是文本的。这个时候就可以对文本使用pointer-events:none.让事件穿过它。


©著作权归作者所有:来自51CTO博客作者FusionZhu的原创作品,如需转载,请注明出处,否则将追究法律责任

祝您财源广进

赞赏

0人进行了赞赏支持

更多相关文章

  1. PHP:oop->重载之set/get/call/callStatic,oop事件委托,数据库查询
  2. Android粗浅系统学习(适合入门)
  3. 02-Vue_事件修饰符
  4. 入门级应急响应小贴士
  5. 210406 类数组 获取遍历DOM元素 向元素添加文本 获取元素的自定
  6. JavaScript:鼠标事件,动态创建导航下拉列表
  7. 一键换肤作业
  8. 别再面向 for 循环编程了,Spring 自带的观察者模式就很香!
  9. CSDN的编辑技巧

随机推荐

  1. RabbitMQ四种Exchange类型之Headers(Java
  2. 将字符串拆分为字符串数组。
  3. Gson将List 反序列化为realmList
  4. 【读书笔记】JavaScript权威指南 第6版 (
  5. java使用compareTo实现一个类的对象之间
  6. java动态编译 (java在线执行代码后端实现
  7. Java学习-准备工作
  8. Java学习第9天(6):面向对象-多态-object
  9. 求一段与读取数据库数据,写入一个数组的ja
  10. Tinking in java枚举类型的自动贩售机