svg click event bug & css pointer-events

svg click event not working

Error

OK ???

css class



/* disabled svg click event */
/*
svg {
pointer-events: none;
}
*/
/* enabled svg click event */
svg {
pointer-events: all;
} svg .selected-svg{
stroke: #f00 !important;
fill: #0f0 !important;
stroke-width: 10 !important;
stroke-linejoin: round;
/* stroke-linejoin: bevel;
stroke-linejoin: miter;
stroke-linecap: round;
stroke-linecap: butt;
stroke-linecap: square; */
}


/* disabled svg click event */
/*
svg {
pointer-events: none;
}
*/
/* enabled svg click event */
svg {
pointer-events: all;
}

https://developer.mozilla.org/en-US/docs/Web/CSS/pointer-events

pointer-events


/* Keyword values */
pointer-events: auto;
pointer-events: none;
pointer-events: visiblePainted; /* SVG only */
pointer-events: visibleFill; /* SVG only */
pointer-events: visibleStroke; /* SVG only */
pointer-events: visible; /* SVG only */
pointer-events: painted; /* SVG only */
pointer-events: fill; /* SVG only */
pointer-events: stroke; /* SVG only */
pointer-events: all; /* SVG only */ /* Global values */
pointer-events: inherit;
pointer-events: initial;
pointer-events: unset;

svg


cancelSelected(className = `selected-svg`) {
// this.reverseColor();
// this.setStyle(true);
this.rect.classList.remove(className);
}
clickSelected(className = `selected-svg`) {
// this.reverseColor();
// this.setStyle();
this.rect.classList.add(className);
}
setStyle(clear = false) {
let style = "";
if(!clear) {
style = "stroke: red; stroke-width: 5;";
}
this.rect.setAttribute("style", style);
}
reverseColor() {
const originColor = this.rect.getAttribute("fill");
const color = `#` + originColor.slice(1).split("").reverse().join("");
this.rect.setAttribute("fill", color);
}

solution & dispatchEvent

https://www.cnblogs.com/xgqfrms/p/12315162.html

          const dom = window.svgPolygon[uuid];
// why ? svg element not support trigger click event!
// dom.click();
dom.dispatchEvent(new Event('click'));

refs



xgqfrms 2012-2020

www.cnblogs.com 发布文章使用:只允许注册用户才可以访问!


svg click event bug & css pointer-events的更多相关文章

  1. shit mint-ui & navbar click event bug

    shit mint-ui & navbar click event bug # Vue 2.0 npm install mint-ui -S // 引入全部组件 import Vue from ...

  2. js trigger click event & dispatchEvent & svg element

    js trigger click event & dispatchEvent & svg element but svg element not support trigger cli ...

  3. vue stop event bug

    vue stop event bug [Vue warn]: Error in v-on handler: "TypeError: e.prevntDefault is not a func ...

  4. button click event in jqxgrid jqwidgets

    button click event in jqxgrid jqwidgets http://www.jqwidgets.com/jquery-widgets-demo/demos/jqxgrid/p ...

  5. SVG namespace & preview bug

    SVG namespace & preview bug error This XML file does not appear to have any style information as ...

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

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

  7. 浏览器 Pointer Events

    前言 Pointer Events是一套触控输入处理规格,支持Pointer Events的浏览器包括了IE和Firefox,最近Chrome也宣布即将支持该处理规则. PointerEvent Po ...

  8. nodejs phantom add click event

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

  9. click event not triggered on bootstrap modal

    I am trying to catch the click event when save changes is pushed. For some reason i can't catch the ...

随机推荐

  1. Redis 雪崩、穿透和击穿

    https://github.com/doocs/advanced-java/blob/master/docs/high-concurrency/redis-caching-avalanche-and ...

  2. mysql、sql server、oracle大比较

    MYSQL 多个数据库多个用户形式(最好每个数据库对应一个用户),占用内存小,适用于所有平台,开源免费 客户端和命令窗口,都是由数据库决定内容-> use datebase; 组函数在selec ...

  3. Web渗透-SQLmap

    Web渗透-SQLmap 一.sqlmap简介 1.1 sqlmap 参数解析 二.sqlmap自动化注入 2.4 提权操作 示例步骤: 1.获得当前数据库 2.获得数据库表 3.获得表的字段 4.获 ...

  4. Jenkins (自动使用docker容器发布java.war +tomcat)

    一.大概流程 因为目前没有找Jenkins 和docker 之间比较友好的插件,所以只能使用这种比较low 的方式来实现自动部署了. 1.Jenkins在gitlab拉取项目并编译. 2.将编译后的代 ...

  5. Redis常见配置文件详解

    Redis常见配置文件详解 # vi redis.conf 1 2 3 daemonize yes #是否以后台进程运行 4 5 pidfile /var/run/redis/redis-server ...

  6. samba 随笔

    SElinux以及防火墙的关闭 关闭SELinux的方法: 修改/etc/selinux/config文件中的SELINUX="" 为 disabled ,然后重启. 如果不想重启 ...

  7. WPF 之 MultiBinding(多路 Binding)(四)

    一.前言 ​ 有时候 UI 需要显示的信息由不止一个数据来源决定,这时候就需要使用 MultiBinding ,即多路 Binding. ​ MultiBinding 与 Binding 一样均以 B ...

  8. Gym 101485 E Elementary Math 网络流 或者 二分图

    题意: 输入一个n,后面输入n行,每一行两个数a.b.你可以对a.b进行三种操作:+.-.* 你需要保证对每一行a.b选取一个操作得到一个结果 你要保证这n行每一个式子选取的操作之后得到的结果都不一样 ...

  9. hdu5371 Hotaru's problem

    Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) Total Submission ...

  10. Codeforces Round #479 (Div. 3) F. Consecutive Subsequence (DP)

    题意:给你一个长度为\(n\)的序列,求一个最长的\({x,x+1,x+2,.....,x+k-1}\)的序列,输出它的长度以及每个数在原序列的位置. 题解:因为这题有个限定条件,最长序列是公差为\( ...