示例代码
// 创建DOM元素,返回一个DOMElement,使用this.dom可以获取到这个元素
Donut.prototype.createDOM = function() {
let svg = document.createElementNS(SVG_NS, 'svg');
svg.setAttribute('version', '1.1');
svg.setAttribute('baseProfile', 'full');
let r = this.maxRadius;
svg.setAttribute('viewBox', [-r, -r, r * 2, r * 2].join(' '));
svg.setAttribute('width', r * 2);
svg.setAttribute('height', r * 2);
svg.style.cssText = 'position:absolute;top:0px;left:0px;';
let donut = createDonut(this.data, this.minRadius, this.maxRadius);
svg.appendChild(donut);
// click事件监听
this.onClick = () => {
// DOMOverlay继承自EventEmitter,可以使用emit触发事件
this.emit('click');
};
svg.addEventListener('click', this.onClick);
return svg;
};
svg.addEventListener('click', this.onClick);
这个在浏览器切换成移动设备测的时候click是不生效的,要使用touchend
姿势: 电脑浏览器切换成移动设备预览,已经算web移动端了!
mydom.addEventListener('touchend', this.onClick);