js trigger click event & dispatchEvent & svg element

but svg element not support trigger click event in js

dispatchEvent & click event

https://stackoverflow.com/questions/49834459/programmatically-trigger-click-event-in-svg-rect-element

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的更多相关文章

  1. svg click event bug & css pointer-events

    svg click event bug & css pointer-events svg click event not working Error OK ??? css class /* d ...

  2. nodejs phantom add click event

    page.evaluate( function() { // find element to send click to var element = document.querySelector( ' ...

  3. js & right click menu

    js & right click menu https://stackoverflow.com/questions/4909167/how-to-add-a-custom-right-clic ...

  4. Atitit vod click event design flow  视频点播系统点击事件文档

    Atitit vod click event design flow  视频点播系统点击事件文档 重构规划1 Click cate1 Click  mov4 重构规划 事件注册,与事件分发管理器分开 ...

  5. JS中的event 对象详解

    JS中的event 对象详解   JS的event对象 Event属性和方法:1. type:事件的类型,如onlick中的click:2. srcElement/target:事件源,就是发生事件的 ...

  6. trigger()的event事件对象之坑

    问题引入,先贴一段有问题的代码,如果你对 trigger()  这个函数了解不透彻,还真看不出这段代码错在哪.完成的功能是样式转换器,想让页面在加载后自行触发点击事件隐藏三个按钮,但是效果如图并没有隐 ...

  7. 使用FastClick的同时造成元素上的trigger('click')无法触发的解决办法

    现象还原: 1. 初始化进入多规格卖场商详页的时候,chrome模拟器切换到安卓环境下,点击加入购物车,规格弹出页没有展示.而在PC和IOS模拟器下,可以弹出规格页 2. 点击加入购物车时,使用 $( ...

  8. trigger click 和 click 的区别??

    trigger click 和 user click 有什么区别吗? 好像没有的.直到发现了这样一段代码. <button class="btn1">Button< ...

  9. js & right click menu & 鼠标滑词

    js & right click menu & 鼠标滑词 // 鼠标滑词 mouseSlipGetWords() { const getSelectionText = () => ...

随机推荐

  1. Centos7部署FytSoa项目至Docker——第三步:部署程序

    FytSoa项目地址:https://gitee.com/feiyit/FytSoaCms 部署完成地址:http://82.156.127.60:8000/ 我买的是一年99标准型SA2云服务器 购 ...

  2. CSS定位走一波(定位学习续)

    又是新的一周过去了,时间到了,春天绿了,关于HTML5的学习进步了,今天博客更新一些CSS定位的内容,小的一些细节也要牢记,方便做一个更完美的项目. 如何让垂直方向居中,解决方式:在父元素添加over ...

  3. docker版mysql的使用和配置(2)——docker版mysql的dockerfile

    既然目标是定制满足自己需要的dockerfile,那么就来看看mysql的dockerfile长什么样. dockerfile选择的是 https://github.com/mysql/mysql-d ...

  4. 设计模式c++(5)——工厂模式

    工厂方法模式定义了一个创建对象的接口,但由子类决定要实例化的类是哪一个.工厂方法让类把实例化推迟到子类. 总的来说,就是工厂方法模式封装了对象的创建,通过让子类决定该创建的对象是什么,来达到将对象创建 ...

  5. hadoop知识点总结(一)hadoop架构以及mapreduce工作机制

    1,为什么需要hadoop 数据分析者面临的问题 数据日趋庞大,读写都出现性能瓶颈: 用户的应用和分析结果,对实时性和响应时间要求越来越高: 使用的模型越来越复杂,计算量指数级上升. 期待的解决方案 ...

  6. burpsuite是用教程

    1.下载burp suite工具 首先要明确,需要java环境,并且配置java环境变量 可以通过吾爱破解下载工具 工具: 双击打开后直接点next --> start burpsuite: 3 ...

  7. 洛谷P3796

    题目链接  题意:有n个由小写字母组成的模式串以及一个文本串T.每个模式串可能会在文本串中出现多次.哪些模式串在文本串T中出现的次数最多. 题解:ac自动机模板加强版,开一个数组单独记录各个字符串出现 ...

  8. poj2362 Square

    Description Given a set of sticks of various lengths, is it possible to join them end-to-end to form ...

  9. 已处理证书链,但是在不受信任提供程序信任的根证书中终止 - Windows 7安装.Net Framework 4.6.2时出现此问题

    https://blog.csdn.net/inchat/article/details/104294302

  10. 微服务架构Day02-SpringBoot日志slf4j

    日志框架 日志门面(接口,日志抽象层 ) 日志实现 JCL(Jakarta Commons Logging).slf4j(Simple Logging Facade for Java).jboss-l ...