UNPKG

element-ui

Version:

A Component Library for Vue.js.

37 lines (31 loc) 915 B
import Vue from 'vue'; let isDragging = false; export default function(element, options) { if (Vue.prototype.$isServer) return; const moveFn = function(event) { if (options.drag) { options.drag(event); } }; const upFn = function(event) { document.removeEventListener('mousemove', moveFn); document.removeEventListener('mouseup', upFn); document.onselectstart = null; document.ondragstart = null; isDragging = false; if (options.end) { options.end(event); } }; element.addEventListener('mousedown', function(event) { if (isDragging) return; document.onselectstart = function() { return false; }; document.ondragstart = function() { return false; }; document.addEventListener('mousemove', moveFn); document.addEventListener('mouseup', upFn); isDragging = true; if (options.start) { options.start(event); } }); }