brush示例

以d3的一个brush进行叙述,示例见:

https://bl.ocks.org/xunhanliu/6f0b46789842e9e19e6cfe9bd0b16806

应用情形:

当页面上有多个图时,况且每个图维护一份brush,互不影响。

js 类的基本结构:

//定义类
var a=100;
class Point {
constructor(x, y) {
this.x = x;
this.y = y;
} toString() {
return '(' + a + this.x + ', ' + this.y + ')'; //全局变量a,仍正常使用
}
}

参考自:https://www.cnblogs.com/zczhangcui/p/6528039.html

说明:

1、constructor:是构造方法

2、类中每个方法前面不许加function。

3、全局变量可正常使用

重点:

this冲突

this在事件中(element)有特定的指定的(谁的函数触发的这个函数,这个函数内部的this就指向谁(dom))。而且在全局区域中使用this,this指向window类。

当然在自定义的类中常只存在事件绑定的方法(如click事件绑定了此类的一个方法)中this的冲突。针对这种情况,可使用闭包来避免。

如:

       class Point {
constructor(dom) {
d3.select(dom).on('click', this._click(this));
} _click(that) {
return function () {
//在里面 this指向被点击的元素,that指向Point实例
}
}
}

最新文章

  1. JQUERY MOBILE 中文API站 和 官方论坛
  2. 使用CSS3动画模拟实现小球自由落体效果
  3. Sql Server 添加外部程序集基本操作
  4. 【xml】转义字符 <等符号出现的原因
  5. CentOS6.4 内核优化
  6. UI4_UITableViewSectionIndex
  7. Firefly 配置说明!
  8. Java队列实现
  9. Java实现http服务器(一)
  10. python:文本文件处理
  11. Win8节省C盘空间攻略
  12. 让C/C++程序一次编译可以发布到多版本Linux之上
  13. Egret index.html设置
  14. Maven详解(一)------ Maven概述
  15. 新概念英语(1-5)Nice to meet you.
  16. 《ServerSuperIO Designer IDE使用教程》-2.与硬件网关数据交互,并进行数据级联转发,直到云端。发布:v4.2.1版本
  17. Visual Studio中Image Watch的使用
  18. 不应该使用String.valueOf的场景
  19. StringRedisTemplate操作Redis
  20. vs2015调试iisexpress无法启动的问题解决方案整理

热门文章

  1. Python笔记13------pandas作图
  2. Node笔记(2)
  3. Ubuntu安装Docker 适合Ubuntu17.04版本
  4. 【hiho一下 第十一周】树中的最长路
  5. 2015 Multi-University Training Contest 7 hdu 5378 Leader in Tree Land
  6. 为了使界面组件更圆滑,Swing,且跨系统
  7. 多个API接口
  8. BA--空调系统一次泵和二次泵区别
  9. POJ 2189
  10. EntboostChat 0.9(越狱版)公布,iOS免费企业IM