js trigger click event & dispatchEvent & svg element
js trigger click event & dispatchEvent & svg element
but svg element not support trigger click event in js
dispatchEvent & click event
svg dom
// dom.click();
dom.dispatchEvent(new Event('click'));
OK

deleteSVGData(`polygons`);
window.svgPolygon = {};
polygons.forEach((poly, i) => {
const polygon = new PolygonConvert(poly, i, svg, this.svgEventBus);
polygon.bindEvents();
// const uuid = polygon.uuid;
const uuid = polygon.getUuid();
log(`polygon uuid`, polygon, polygon.uuid, poly.getAttribute(`uuid`), uuid);
const arr = getSVGData(`polygons`) || [];
arr.push(uuid);
window.svgPolygon[uuid] = poly;
// DOM Object stringify bug
// arr.push({
// uuid: uuid,
// dom: poly,
// });
log(`arr`, arr);
setSVGData(`polygons`, arr);
setTimeout(() => {
const arr = getSVGData(`polygons`) || [];
const uuid = arr[0];
log(`arr[0]`, arr[0], uuid);
const dom = window.svgPolygon[uuid];
// why ? svg element not support trigger click event!
// dom.click();
dom.dispatchEvent(new Event('click'));
}, 3000)
// this.lockEditor();
// setTimeout(() => {
// polygon.scaleSize(1.5);
// }, 3000);
// setTimeout(() => {
// polygon.translatePoints(100, 100);
// }, 3000);
});
error
css pointer-events
maybe it's help
/* disabled svg click event */
svg {
pointer-events: none;
}
/* enabled svg click event */
svg {
pointer-events: all;
}
https://github.com/angular/protractor/issues/4495#issuecomment-586598840
https://www.smashingmagazine.com/2018/05/svg-interaction-pointer-events-property/
CustomEvent
let event = new CustomEvent(
"newMessage",
{
detail: {
message: "Hello World!",
time: new Date(),
},
bubbles: true,
cancelable: true
}
);
// global html
document.querySelector(`:root`).dispatchEvent(event);
// document.querySelector(`html`).dispatchEvent(event);
// document.querySelector(`body`).dispatchEvent(event);
document.addEventListener("newMessage", newMessageHandler, false);
EventBus / EventEmitter
refs
xgqfrms 2012-2020
www.cnblogs.com 发布文章使用:只允许注册用户才可以访问!
js trigger click event & dispatchEvent & svg element的更多相关文章
- svg click event bug & css pointer-events
svg click event bug & css pointer-events svg click event not working Error OK ??? css class /* d ...
- nodejs phantom add click event
page.evaluate( function() { // find element to send click to var element = document.querySelector( ' ...
- js & right click menu
js & right click menu https://stackoverflow.com/questions/4909167/how-to-add-a-custom-right-clic ...
- Atitit vod click event design flow 视频点播系统点击事件文档
Atitit vod click event design flow 视频点播系统点击事件文档 重构规划1 Click cate1 Click mov4 重构规划 事件注册,与事件分发管理器分开 ...
- JS中的event 对象详解
JS中的event 对象详解 JS的event对象 Event属性和方法:1. type:事件的类型,如onlick中的click:2. srcElement/target:事件源,就是发生事件的 ...
- trigger()的event事件对象之坑
问题引入,先贴一段有问题的代码,如果你对 trigger() 这个函数了解不透彻,还真看不出这段代码错在哪.完成的功能是样式转换器,想让页面在加载后自行触发点击事件隐藏三个按钮,但是效果如图并没有隐 ...
- 使用FastClick的同时造成元素上的trigger('click')无法触发的解决办法
现象还原: 1. 初始化进入多规格卖场商详页的时候,chrome模拟器切换到安卓环境下,点击加入购物车,规格弹出页没有展示.而在PC和IOS模拟器下,可以弹出规格页 2. 点击加入购物车时,使用 $( ...
- trigger click 和 click 的区别??
trigger click 和 user click 有什么区别吗? 好像没有的.直到发现了这样一段代码. <button class="btn1">Button< ...
- js & right click menu & 鼠标滑词
js & right click menu & 鼠标滑词 // 鼠标滑词 mouseSlipGetWords() { const getSelectionText = () => ...
随机推荐
- Promise 中reject 和 catch 处理上有什么区别
reject 是用来抛出异常,catch 是用来处理异常reject 是 Promise 的方法,而 catch 是 Promise 实例的方法reject后的东西,一定会进入then中的第二个回调, ...
- React中组件间通信的方式
React中组件间通信的方式 React中组件间通信包括父子组件.兄弟组件.隔代组件.非嵌套组件之间通信. Props props适用于父子组件的通信,props以单向数据流的形式可以很好的完成父子组 ...
- LOJ104 普通平衡树
题目描述 这是一道模板题. 您需要写一种数据结构(可参考题目标题),来维护一些数,其中需要提供以下操作: 插入 x 数: 删除 x 数(若有多个相同的数,因只删除一个): 查询 x 数的排名(若 ...
- 在plsql/developer的命令窗口执行sql脚本
在plsql/developer的命令窗口执行sql脚本的命令是@+路径. 命令窗口,如下: 1.在指定位置创建.sql文件 2-1.输入@,点击回车,选择.sql文件 2-2.或者@加路径
- Zookeeper语法
ZooKeeper 是一个典型的分布式数据一致性解决方案,分布式应用程序可以基于 ZooKeeper 实现诸如数据发布/订阅.负载均衡.命名服务.分布式协调/通知.集群管理.Master 选举.分布式 ...
- tp6.0配置站点后无法访问
1.安装composer中国镜像composer config -g repo.packagist composer https://packagist.phpcomposer.com2.执行comp ...
- Web信息收集之搜索引擎-Shodan Hacking
Web信息收集之搜索引擎-Shodan Hacking 一.Shodan Hacking简介 1.1 ip 1.2 Service/protocol 1.3 Keyword 1.4 Cuuntry 1 ...
- ThinkPHP 漏洞利用
ThinkPHP thinkphp_5x_命令执行漏洞 受影响版本包括5.0和5.1版本 docker漏洞环境源码: https://github.com/vulnspy/thinkphp-5.1.2 ...
- centos6.5升级gcc 4.4.7为最新版4.9.1
==================本方法切实可行===桌面版不建议用.centos============================== 1.下载源码包 我的下载 gcc-4.9.1.tar ...
- Neeto-Vue:我为了记笔记,手写了一个为知笔记客户端
构建自托管的笔记系统 这两年各种笔记系统快速井喷,好像谁都能来掺一脚,app store随便搜索一个关键字就会有一大堆的结果,从老牌的印象笔记,Bear,MWeb,有道云笔记再到新星专注笔记之类,从买 ...