a90e5e74d9cec1251898b8d8d152f40b.json 44 KB

1
  1. {"remainingRequest":"C:\\Users\\100zone\\Desktop\\baizong\\community\\SmartCommunity\\videoSurveillance\\node_modules\\babel-loader\\lib\\index.js!C:\\Users\\100zone\\Desktop\\baizong\\community\\SmartCommunity\\videoSurveillance\\src\\utils\\directives.js","dependencies":[{"path":"C:\\Users\\100zone\\Desktop\\baizong\\community\\SmartCommunity\\videoSurveillance\\src\\utils\\directives.js","mtime":1663828782933},{"path":"C:\\Users\\100zone\\Desktop\\baizong\\community\\SmartCommunity\\videoSurveillance\\babel.config.js","mtime":1663828782900},{"path":"C:\\Users\\100zone\\Desktop\\baizong\\community\\SmartCommunity\\videoSurveillance\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"C:\\Users\\100zone\\Desktop\\baizong\\community\\SmartCommunity\\videoSurveillance\\node_modules\\babel-loader\\lib\\index.js","mtime":315532800000}],"contextDependencies":[],"result":["import \"core-js/modules/es6.regexp.replace\";\nimport \"core-js/modules/es7.array.includes\";\nimport \"core-js/modules/es6.string.includes\";\nimport Vue from 'vue';\nexport default {\n install: function install() {\n Vue.directive('view', {\n inserted: function inserted(el, binding) {\n el.onclick = function (e) {\n var url = e.target.getAttribute('url');\n var $div = document.createElement('div');\n $div.setAttribute('id', 'img-view');\n document.body.appendChild($div);\n $div.innerHTML = \"<i class=\\\"el-icon-error\\\"></i>\\n <span>\\u6EDA\\u52A8\\u9F20\\u6807\\u6EDA\\u8F6E\\u53EF\\u4EE5\\u653E\\u5927\\u3001\\u7F29\\u5C0F\\u56FE\\u7247\\uFF1B\\u70B9\\u51FB\\u5173\\u95ED\\u9884\\u89C8\\u3002</span>\\n <img src=\\\"\" + url + \"\\\" width=\\\"800\\\"/>\";\n\n $div.onclick = function (e) {\n $div.removeEventListener('DOMMouseScroll', scrollFunc);\n window.onmousewheel = document.onmousewheel = null;\n document.body.removeChild($div);\n };\n\n var i = 800;\n\n function scrollFunc(e) {\n e = e || window.event;\n\n if (e.wheelDelta) {\n //IE/Opera/Chrome\n if (parseInt(e.wheelDelta) > 0) {\n if (i < document.body.clientWidth - 100) {\n i += 20;\n }\n } else {\n if (i > 100) {\n i -= 20;\n }\n }\n } else if (e.detail) {\n //Firefox\n if (parseInt(e.wheelDelta) > 0) {\n if (i < document.body.clientWidth - 50) {\n i += 20;\n }\n } else {\n if (i > 100) {\n i -= 20;\n }\n }\n }\n\n $div.getElementsByTagName('img')[0].setAttribute('style', 'width: ' + i + 'px');\n }\n\n $div.addEventListener('DOMMouseScroll', scrollFunc, false);\n window.onmousewheel = document.onmousewheel = scrollFunc;\n };\n }\n }); // 提示框,需要绑定data-txt\n\n Vue.directive('tip', {\n inserted: function inserted(el, binding) {\n var $div;\n el.addEventListener('mouseover', function (e) {\n var curStyle = window.getComputedStyle(el, ''); // 获取当前元素的style\n\n var textSpan = document.createElement('span'); // 创建一个容器来记录文字的width\n // 设置新容器的字体样式,确保与当前需要隐藏的样式相同\n\n textSpan.style.fontSize = curStyle.fontSize;\n textSpan.style.fontWeight = curStyle.fontWeight;\n textSpan.style.fontFamily = curStyle.fontFamily; // 将容器插入body,如果不插入,offsetWidth为0\n\n document.body.appendChild(textSpan); // 设置新容器的文字\n\n textSpan.innerHTML = el.innerText;\n var flag = textSpan.offsetWidth >= el.offsetWidth;\n\n if (binding.modifiers.same) {\n flag = textSpan.offsetWidth > el.offsetWidth;\n }\n\n if (flag) {\n var text = e.target.getAttribute('data-txt') || el.innerText,\n top = e.clientY - e.offsetY,\n left = e.clientX - e.offsetX + e.target.clientWidth / 2;\n $div = document.createElement('div');\n $div.setAttribute('class', 'site-tips');\n $div.setAttribute('style', 'top:' + top + 'px;left:' + left + 'px');\n $div.innerHTML = text;\n document.body.appendChild($div);\n } // 移除刚刚创建的记录文字的容器\n\n\n document.body.removeChild(textSpan);\n });\n el.addEventListener('mouseout', function (e) {\n if ($div) {\n try {\n document.body.removeChild($div);\n } catch (e) {}\n }\n });\n }\n });\n Vue.directive('number-input', {\n inserted: function inserted(el, binding) {\n el.addEventListener(\"keypress\", function (e) {\n e = e || window.event;\n var charcode = e.keyCode || e.which || e.charCode;\n\n if (charcode == 45) {\n if (e.target.value && (e.target.value[0] !== '-' || e.target.value[0] === '-')) {\n e.preventDefault();\n }\n\n return;\n }\n\n if (binding.modifiers.float && charcode == 46) {\n if (!e.target.value || e.target.value && (e.target.value[0] === '-' && e.target.value.length < 2 || e.target.value.length >= 2 && e.target.value.includes('.'))) {\n e.preventDefault();\n }\n\n return;\n }\n\n if (!binding.modifiers.float && charcode == 46) {\n e.preventDefault();\n return;\n }\n\n if (charcode != 8 && charcode != 46 && charcode != 45 && (charcode < 48 || charcode > 57)) {\n if (e.preventDefault) {\n e.preventDefault();\n } else {\n e.returnValue = false;\n }\n }\n });\n el.addEventListener(\"paste\", function () {\n return false;\n });\n el.addEventListener(\"dragenter\", function () {\n return false;\n });\n el.addEventListener(\"keyup\", function (e) {\n e.target.value = e.target.value.replace(/[^\\d.-]/gi, '');\n });\n }\n });\n Vue.directive('trim', {\n inserted: function inserted(el) {\n el.addEventListener(\"keypress\", function (e) {\n e = e || window.event;\n var charcode = e.keyCode || e.which || e.charCode;\n\n if (charcode === 32) {\n if (e.preventDefault) {\n e.preventDefault();\n } else {\n e.returnValue = false;\n }\n\n return;\n }\n });\n }\n });\n Vue.directive('loadmore', {\n bind: function bind(el, binding) {\n el.addEventListener('scroll', function () {\n var sign = 100;\n var scrollDistance = this.scrollHeight - this.scrollTop - this.clientHeight;\n\n if (scrollDistance <= sign) {\n binding.value();\n }\n }, true);\n }\n }); // 输入框输入校验\n\n Vue.directive('float', {\n inserted: function inserted(el) {\n el.addEventListener(\"keypress\", function (e) {\n e = e || window.event;\n var charcode = e.keyCode || e.which || e.charCode;\n var val = e.target.value;\n\n if (val === '-') {\n if (charcode < 48 || charcode > 57) {\n e.preventDefault();\n e.returnValue = false;\n return;\n }\n } else if (val === '-0' || val === '0') {\n if (charcode !== 46) {\n e.preventDefault();\n e.returnValue = false;\n return;\n }\n } else {\n if (val.indexOf('.') !== -1) {\n // 只能输入0-9\n if (charcode < 48 || charcode > 57) {\n e.preventDefault();\n e.returnValue = false;\n return;\n }\n } else {\n if (val.length) {\n // 只能输入0-9和.\n if ((charcode < 48 || charcode > 57) && charcode != 46) {\n e.preventDefault();\n e.returnValue = false;\n return;\n }\n } else {\n // 只能输入0-9 . -\n if ((charcode < 48 || charcode > 57) && charcode != 46 && charcode != 45) {\n e.preventDefault();\n e.returnValue = false;\n return;\n }\n }\n }\n }\n });\n el.addEventListener(\"paste\", function () {// el.addEventListener('keyup', e => {\n // setTimeout(() => {\n // }, 100);\n // })\n // el.addEventListener('blur', e => {\n // e.target.value = e.target.value.replace(/[^0-9-]*((0{1}|[1-9]\\d*)(\\.\\d{1,})?).*$/, '$1')\n // })\n // e.preventDefault()\n // e.returnValue = false\n // return\n });\n el.addEventListener(\"dragenter\", function () {\n return false;\n });\n }\n });\n Vue.directive('txt-tip', {\n inserted: function inserted(el, binding) {\n var $div;\n el.addEventListener('mouseover', function (e) {\n // alert(\"111\")\n var curStyle = window.getComputedStyle(el, ''); // 获取当前元素的style\n\n var textSpan = document.createElement('span'); // 创建一个容器来记录文字的width\n // 设置新容器的字体样式,确保与当前需要隐藏的样式相同\n\n textSpan.style.fontSize = curStyle.fontSize;\n textSpan.style.fontWeight = curStyle.fontWeight;\n textSpan.style.fontFamily = curStyle.fontFamily;\n textSpan.style.color = curStyle.color; // 将容器插入body,如果不插入,offsetWidth为0\n\n document.body.appendChild(textSpan); // 设置新容器的文字\n\n textSpan.innerHTML = el.innerText;\n var flag = textSpan.offsetWidth >= el.offsetWidth;\n\n if (binding.modifiers.same) {\n flag = textSpan.offsetWidth > el.offsetWidth;\n } // if (flag) {\n\n\n var text = e.target.getAttribute('data-txt') || el.innerText,\n top = e.clientY + 10,\n left = e.clientX + 10;\n $div = document.createElement('div');\n $div.setAttribute('class', 'text-tips');\n $div.setAttribute('style', 'top:' + top + 'px;left:' + left + 'px');\n $div.innerHTML = text;\n $div.style.color = curStyle.color;\n $div.style.borderColor = curStyle.color;\n document.body.appendChild($div); // }\n // 移除刚刚创建的记录文字的容器\n\n document.body.removeChild(textSpan);\n });\n el.addEventListener('mouseout', function (e) {\n if ($div) {\n try {\n document.body.removeChild($div);\n } catch (e) {}\n }\n });\n }\n });\n Vue.directive('left-txt-tip', {\n inserted: function inserted(el, binding) {\n var $div;\n el.addEventListener('mouseover', function (e) {\n var curStyle = window.getComputedStyle(el, ''); // 获取当前元素的style\n\n var textSpan = document.createElement('span'); // 创建一个容器来记录文字的width\n // 设置新容器的字体样式,确保与当前需要隐藏的样式相同\n\n textSpan.style.fontSize = curStyle.fontSize;\n textSpan.style.fontWeight = curStyle.fontWeight;\n textSpan.style.fontFamily = curStyle.fontFamily;\n textSpan.style.color = curStyle.color; // 将容器插入body,如果不插入,offsetWidth为0\n\n document.body.appendChild(textSpan); // 设置新容器的文字\n\n textSpan.innerHTML = el.innerText;\n var flag = textSpan.offsetWidth >= el.offsetWidth;\n\n if (binding.modifiers.same) {\n flag = textSpan.offsetWidth > el.offsetWidth;\n }\n\n var text = e.target.getAttribute('data-txt') || el.innerText,\n top = e.clientY + 10,\n left = e.clientX - 40;\n $div = document.createElement('div');\n $div.setAttribute('class', 'text-tips');\n $div.setAttribute('style', 'top:' + top + 'px;left:' + left + 'px');\n $div.innerHTML = text;\n $div.style.color = curStyle.color;\n $div.style.borderColor = curStyle.color;\n document.body.appendChild($div);\n document.body.removeChild(textSpan);\n });\n el.addEventListener('mouseout', function (e) {\n if ($div) {\n try {\n document.body.removeChild($div);\n } catch (e) {}\n }\n });\n el.addEventListener('click', function (e) {\n if ($div) {\n try {\n document.body.removeChild($div);\n } catch (e) {}\n }\n });\n }\n });\n Vue.directive('bottom-txt-tip', {\n inserted: function inserted(el, binding) {\n var $div;\n el.addEventListener('mouseover', function (e) {\n var curStyle = window.getComputedStyle(el, ''); // 获取当前元素的style\n\n var textSpan = document.createElement('span'); // 创建一个容器来记录文字的width\n // 设置新容器的字体样式,确保与当前需要隐藏的样式相同\n\n textSpan.style.fontSize = curStyle.fontSize;\n textSpan.style.fontWeight = curStyle.fontWeight;\n textSpan.style.fontFamily = curStyle.fontFamily;\n textSpan.style.color = curStyle.color; // 将容器插入body,如果不插入,offsetWidth为0\n\n document.body.appendChild(textSpan); // 设置新容器的文字\n\n textSpan.innerHTML = el.innerText;\n var flag = textSpan.offsetWidth >= el.offsetWidth;\n\n if (binding.modifiers.same) {\n flag = textSpan.offsetWidth > el.offsetWidth;\n }\n\n var text = e.target.getAttribute('data-txt') || el.innerText,\n top = e.clientY + 20,\n left = e.clientX - 40;\n $div = document.createElement('div');\n $div.setAttribute('class', 'text-gray-tips');\n $div.setAttribute('style', 'top:' + top + 'px;left:' + left + 'px');\n $div.innerHTML = text;\n $div.style.color = curStyle.color;\n document.body.appendChild($div);\n document.body.removeChild(textSpan);\n });\n el.addEventListener('mouseout', function (e) {\n if ($div) {\n try {\n document.body.removeChild($div);\n } catch (e) {}\n }\n });\n el.addEventListener('click', function (e) {\n if ($div) {\n try {\n document.body.removeChild($div);\n } catch (e) {}\n }\n });\n }\n });\n }\n};",{"version":3,"sources":["C:/Users/100zone/Desktop/baizong/community/SmartCommunity/videoSurveillance/src/utils/directives.js"],"names":["Vue","install","directive","inserted","el","binding","onclick","e","url","target","getAttribute","$div","document","createElement","setAttribute","body","appendChild","innerHTML","removeEventListener","scrollFunc","window","onmousewheel","removeChild","i","event","wheelDelta","parseInt","clientWidth","detail","getElementsByTagName","addEventListener","curStyle","getComputedStyle","textSpan","style","fontSize","fontWeight","fontFamily","innerText","flag","offsetWidth","modifiers","same","text","top","clientY","offsetY","left","clientX","offsetX","charcode","keyCode","which","charCode","value","preventDefault","float","length","includes","returnValue","replace","bind","sign","scrollDistance","scrollHeight","scrollTop","clientHeight","val","indexOf","color","borderColor"],"mappings":"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","sourcesContent":["import Vue from 'vue';\r\n\r\nexport default {\r\n\tinstall() {\r\n Vue.directive('view', {\r\n inserted(el, binding) {\r\n el.onclick = (e) => {\r\n let url = e.target.getAttribute('url');\r\n let $div = document.createElement('div');\r\n $div.setAttribute('id', 'img-view');\r\n document.body.appendChild($div);\r\n $div.innerHTML = `<i class=\"el-icon-error\"></i>\r\n <span>滚动鼠标滚轮可以放大、缩小图片;点击关闭预览。</span>\r\n <img src=\"` + url + `\" width=\"800\"/>`\r\n $div.onclick = (e) => {\r\n $div.removeEventListener('DOMMouseScroll', scrollFunc);\r\n window.onmousewheel = document.onmousewheel = null;\r\n document.body.removeChild($div)\r\n }\r\n let i = 800;\r\n function scrollFunc(e) {\r\n e = e || window.event;\r\n if(e.wheelDelta) {\r\n //IE/Opera/Chrome\r\n if(parseInt(e.wheelDelta) > 0) {\r\n if(i < document.body.clientWidth - 100) {\r\n i += 20;\r\n }\r\n } else {\r\n if(i > 100) {\r\n i -= 20;\r\n }\r\n }\r\n } else if(e.detail) {\r\n //Firefox\r\n if(parseInt(e.wheelDelta) > 0) {\r\n if(i < document.body.clientWidth - 50) {\r\n i += 20;\r\n }\r\n } else {\r\n if(i > 100) {\r\n i -= 20;\r\n }\r\n }\r\n }\r\n $div.getElementsByTagName('img')[0].setAttribute('style','width: ' + i +'px')\r\n }\r\n $div.addEventListener('DOMMouseScroll', scrollFunc, false)\r\n window.onmousewheel = document.onmousewheel = scrollFunc\r\n }\r\n }\r\n })\r\n\r\n // 提示框,需要绑定data-txt\r\n Vue.directive('tip', {\r\n inserted(el, binding) {\r\n let $div;\r\n el.addEventListener('mouseover', e => {\r\n const curStyle = window.getComputedStyle(el, ''); // 获取当前元素的style\r\n const textSpan = document.createElement('span'); // 创建一个容器来记录文字的width\r\n // 设置新容器的字体样式,确保与当前需要隐藏的样式相同\r\n textSpan.style.fontSize = curStyle.fontSize;\r\n textSpan.style.fontWeight = curStyle.fontWeight;\r\n textSpan.style.fontFamily = curStyle.fontFamily;\r\n // 将容器插入body,如果不插入,offsetWidth为0\r\n document.body.appendChild(textSpan);\r\n // 设置新容器的文字\r\n textSpan.innerHTML = el.innerText;\r\n let flag = textSpan.offsetWidth >= el.offsetWidth;\r\n if(binding.modifiers.same) {\r\n flag = textSpan.offsetWidth > el.offsetWidth;\r\n }\r\n if (flag) {\r\n let text = e.target.getAttribute('data-txt') || el.innerText,\r\n top = e.clientY - e.offsetY,\r\n left = e.clientX - e.offsetX + e.target.clientWidth/2;\r\n $div = document.createElement('div');\r\n $div.setAttribute('class', 'site-tips');\r\n $div.setAttribute('style', 'top:' + top + 'px;left:' + left + 'px');\r\n $div.innerHTML = text;\r\n document.body.appendChild($div);\r\n }\r\n // 移除刚刚创建的记录文字的容器\r\n document.body.removeChild(textSpan);\r\n })\r\n el.addEventListener('mouseout', e => {\r\n if($div) {\r\n try {\r\n document.body.removeChild($div);\r\n } catch(e) {\r\n }\r\n }\r\n })\r\n }\r\n })\r\n Vue.directive('number-input', {\r\n inserted: (el, binding) => {\r\n el.addEventListener(\"keypress\", (e) =>{\r\n e = e || window.event;\r\n let charcode = e.keyCode || e.which || e.charCode;\r\n if(charcode == 45) {\r\n if(e.target.value && (e.target.value[0] !== '-' || e.target.value[0] === '-')) {\r\n e.preventDefault();\r\n }\r\n return\r\n }\r\n if(binding.modifiers.float && charcode == 46) {\r\n if(!e.target.value || (e.target.value && ((e.target.value[0] === '-' && e.target.value.length < 2) || (e.target.value.length >= 2 && e.target.value.includes('.'))))) {\r\n e.preventDefault();\r\n }\r\n return\r\n }\r\n if(!binding.modifiers.float && charcode == 46) {\r\n e.preventDefault();\r\n return;\r\n }\r\n if(charcode!=8 && charcode!=46 && charcode!=45 && (charcode<48 || charcode>57)){\r\n if(e.preventDefault){\r\n e.preventDefault();\r\n }else{\r\n e.returnValue = false;\r\n }\r\n }\r\n });\r\n el.addEventListener(\"paste\", () => false);\r\n el.addEventListener(\"dragenter\", () => false);\r\n el.addEventListener(\"keyup\", (e) => {\r\n e.target.value = e.target.value.replace(/[^\\d.-]/gi,'');\r\n });\r\n }\r\n })\r\n Vue.directive('trim', {\r\n inserted: (el) => {\r\n el.addEventListener(\"keypress\", (e) =>{\r\n e = e || window.event;\r\n let charcode = e.keyCode || e.which || e.charCode;\r\n if(charcode === 32) {\r\n if(e.preventDefault){\r\n e.preventDefault();\r\n }else{\r\n e.returnValue = false;\r\n }\r\n return;\r\n }\r\n })\r\n }\r\n })\r\n Vue.directive('loadmore', {\r\n bind(el, binding) {\r\n el.addEventListener('scroll', function() {\r\n let sign = 100\r\n const scrollDistance = this.scrollHeight - this.scrollTop - this.clientHeight\r\n if (scrollDistance <= sign) {\r\n binding.value()\r\n }\r\n }, true)\r\n }\r\n })\r\n // 输入框输入校验\r\n Vue.directive('float', {\r\n inserted: (el) =>{\r\n el.addEventListener(\"keypress\", (e) =>{\r\n e = e || window.event;\r\n let charcode = e.keyCode || e.which || e.charCode;\r\n let val = e.target.value\r\n if(val === '-') {\r\n if(charcode < 48 || charcode > 57) {\r\n e.preventDefault()\r\n e.returnValue = false;\r\n return\r\n }\r\n } else if(val === '-0' || val === '0') {\r\n if(charcode !== 46) {\r\n e.preventDefault()\r\n e.returnValue = false\r\n return\r\n }\r\n } else {\r\n if(val.indexOf('.') !== -1) {\r\n // 只能输入0-9\r\n if(charcode < 48 || charcode > 57) {\r\n e.preventDefault()\r\n e.returnValue = false;\r\n return\r\n }\r\n } else {\r\n if(val.length) {\r\n // 只能输入0-9和.\r\n if((charcode < 48 || charcode > 57) && charcode != 46) {\r\n e.preventDefault()\r\n e.returnValue = false\r\n return\r\n }\r\n } else {\r\n // 只能输入0-9 . -\r\n if((charcode < 48 || charcode > 57) && charcode != 46 && charcode != 45) {\r\n e.preventDefault()\r\n e.returnValue = false\r\n return\r\n }\r\n }\r\n }\r\n }\r\n });\r\n el.addEventListener(\"paste\", () => {\r\n // el.addEventListener('keyup', e => {\r\n // setTimeout(() => {\r\n // }, 100);\r\n // })\r\n // el.addEventListener('blur', e => {\r\n // e.target.value = e.target.value.replace(/[^0-9-]*((0{1}|[1-9]\\d*)(\\.\\d{1,})?).*$/, '$1')\r\n // })\r\n // e.preventDefault()\r\n // e.returnValue = false\r\n // return\r\n });\r\n el.addEventListener(\"dragenter\", () => false);\r\n }\r\n })\r\n Vue.directive('txt-tip',{\r\n inserted(el, binding) {\r\n let $div;\r\n el.addEventListener('mouseover', e => {\r\n // alert(\"111\")\r\n const curStyle = window.getComputedStyle(el, ''); // 获取当前元素的style\r\n const textSpan = document.createElement('span'); // 创建一个容器来记录文字的width\r\n // 设置新容器的字体样式,确保与当前需要隐藏的样式相同\r\n textSpan.style.fontSize = curStyle.fontSize;\r\n textSpan.style.fontWeight = curStyle.fontWeight;\r\n textSpan.style.fontFamily = curStyle.fontFamily;\r\n textSpan.style.color = curStyle.color;\r\n // 将容器插入body,如果不插入,offsetWidth为0\r\n document.body.appendChild(textSpan);\r\n // 设置新容器的文字\r\n textSpan.innerHTML = el.innerText;\r\n let flag = textSpan.offsetWidth >= el.offsetWidth;\r\n if(binding.modifiers.same) {\r\n flag = textSpan.offsetWidth > el.offsetWidth;\r\n }\r\n // if (flag) {\r\n let text = e.target.getAttribute('data-txt') || el.innerText,\r\n top = e.clientY+10,\r\n left = e.clientX+10;\r\n $div = document.createElement('div');\r\n $div.setAttribute('class', 'text-tips');\r\n $div.setAttribute('style', 'top:' + top + 'px;left:' + left + 'px');\r\n $div.innerHTML = text;\r\n $div.style.color=curStyle.color;\r\n $div.style.borderColor=curStyle.color\r\n document.body.appendChild($div);\r\n // }\r\n // 移除刚刚创建的记录文字的容器\r\n document.body.removeChild(textSpan);\r\n })\r\n el.addEventListener('mouseout', e => {\r\n if($div) {\r\n try {\r\n document.body.removeChild($div);\r\n } catch(e) {\r\n }\r\n }\r\n })\r\n }\r\n })\r\n Vue.directive('left-txt-tip',{\r\n inserted(el, binding) {\r\n let $div;\r\n el.addEventListener('mouseover', e => {\r\n const curStyle = window.getComputedStyle(el, ''); // 获取当前元素的style\r\n const textSpan = document.createElement('span'); // 创建一个容器来记录文字的width\r\n // 设置新容器的字体样式,确保与当前需要隐藏的样式相同\r\n textSpan.style.fontSize = curStyle.fontSize;\r\n textSpan.style.fontWeight = curStyle.fontWeight;\r\n textSpan.style.fontFamily = curStyle.fontFamily;\r\n textSpan.style.color = curStyle.color;\r\n // 将容器插入body,如果不插入,offsetWidth为0\r\n document.body.appendChild(textSpan);\r\n // 设置新容器的文字\r\n textSpan.innerHTML = el.innerText;\r\n let flag = textSpan.offsetWidth >= el.offsetWidth;\r\n if(binding.modifiers.same) {\r\n flag = textSpan.offsetWidth > el.offsetWidth;\r\n }\r\n let text = e.target.getAttribute('data-txt') || el.innerText,\r\n top = e.clientY+10,\r\n left = e.clientX-40;\r\n $div = document.createElement('div');\r\n $div.setAttribute('class', 'text-tips');\r\n $div.setAttribute('style', 'top:' + top + 'px;left:' + left + 'px');\r\n $div.innerHTML = text;\r\n $div.style.color=curStyle.color;\r\n $div.style.borderColor=curStyle.color\r\n document.body.appendChild($div);\r\n document.body.removeChild(textSpan);\r\n })\r\n el.addEventListener('mouseout', e => {\r\n if($div) {\r\n try {\r\n document.body.removeChild($div);\r\n } catch(e) {\r\n }\r\n }\r\n })\r\n el.addEventListener('click', e => {\r\n if($div) {\r\n try {\r\n document.body.removeChild($div);\r\n } catch(e) {\r\n }\r\n }\r\n })\r\n }\r\n })\r\n Vue.directive('bottom-txt-tip',{\r\n inserted(el, binding) {\r\n let $div;\r\n el.addEventListener('mouseover', e => {\r\n const curStyle = window.getComputedStyle(el, ''); // 获取当前元素的style\r\n const textSpan = document.createElement('span'); // 创建一个容器来记录文字的width\r\n // 设置新容器的字体样式,确保与当前需要隐藏的样式相同\r\n textSpan.style.fontSize = curStyle.fontSize;\r\n textSpan.style.fontWeight = curStyle.fontWeight;\r\n textSpan.style.fontFamily = curStyle.fontFamily;\r\n textSpan.style.color = curStyle.color;\r\n // 将容器插入body,如果不插入,offsetWidth为0\r\n document.body.appendChild(textSpan);\r\n // 设置新容器的文字\r\n textSpan.innerHTML = el.innerText;\r\n let flag = textSpan.offsetWidth >= el.offsetWidth;\r\n if(binding.modifiers.same) {\r\n flag = textSpan.offsetWidth > el.offsetWidth;\r\n }\r\n let text = e.target.getAttribute('data-txt') || el.innerText,\r\n top = e.clientY+20,\r\n left = e.clientX-40;\r\n $div = document.createElement('div');\r\n $div.setAttribute('class', 'text-gray-tips');\r\n $div.setAttribute('style', 'top:' + top + 'px;left:' + left + 'px');\r\n $div.innerHTML = text;\r\n $div.style.color=curStyle.color;\r\n document.body.appendChild($div);\r\n document.body.removeChild(textSpan);\r\n })\r\n el.addEventListener('mouseout', e => {\r\n if($div) {\r\n try {\r\n document.body.removeChild($div);\r\n } catch(e) {\r\n }\r\n }\r\n })\r\n el.addEventListener('click', e => {\r\n if($div) {\r\n try {\r\n document.body.removeChild($div);\r\n } catch(e) {\r\n }\r\n }\r\n })\r\n }\r\n })\r\n\t}\r\n}"]}]}