Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 国产黄色美女,亚洲国产精品一区二区三区久久,国产一级特黄在线播放

          整合營銷服務商

          電腦端+手機端+微信端=數據同步管理

          免費咨詢熱線:

          html常用標簽簡單匯總

          1),常用標簽簡單匯總

          前端開發過程中難免會用到特殊字體,如何引入特殊字體?

          1. 首先你得有字體文件,文件格式為,TTF、OTF、EOT、SVG
          2. 將字體文件放入本地文件夾中或者服務器上
          3. css中引入,以下為引入方法
          @font-face {
            font-family: 'icomoon'; // 這里自定義字體名稱 
            src:  url('fonts/icomoon.eot?'); // 文件路徑或者服務器路徑
            src:  url('fonts/icomoon.eot?') format('embedded-opentype'), // format屬性:字體的格式 主要用于瀏覽器識別
              url('fonts/icomoon.ttf?') format('truetype'),
              url('fonts/icomoon.woff?') format('woff'),
              url('fonts/icomoon.svg?') format('svg');
            font-weight: normal;
            font-style: normal;
            font-display: block;
          }
          
          /* 調用 */
          body{
              font-family:'icomoon'
          }
          

          注:eot為IE專用,ttf官方說是蘋果和微軟為PostScript 而開發的字體格式,個人理解為通用格式。woff是壓縮過后輕量級,svg對文本支持不太好

          先在src下面創建"src"下創建文件夾dialogDrag(文件名可以自定義): (目錄crc/dialogDrag)
          然后在此文件下創建 index.js 和 drag.js文件 (
          直接復制這兩個js文件即可)

          drag.js

          export default {
            bind(el, binding, vnode) {
              const dialogHeaderEl = el.querySelector('.el-dialog__header')
              const dragDom = el.querySelector('.el-dialog')
              dialogHeaderEl.style.cssText += ';cursor:move;'
              dragDom.style.cssText += ';top:0px;'
          
              // 獲取原有屬性 ie dom元素.currentStyle 火狐谷歌 window.getComputedStyle(dom元素, null);
              const getStyle = (() => {
                if (window.document.currentStyle) {
                  return (dom, attr) => dom.currentStyle[attr]
                } else {
                  return (dom, attr) => getComputedStyle(dom, false)[attr]
                }
              })()
          
              dialogHeaderEl.onmousedown = (e) => {
                // 鼠標按下,計算當前元素距離可視區的距離
                const disX = e.clientX - dialogHeaderEl.offsetLeft
                const disY = e.clientY - dialogHeaderEl.offsetTop
          
                const dragDomWidth = dragDom.offsetWidth
                const dragDomHeight = dragDom.offsetHeight
          
                const screenWidth = document.body.clientWidth
                const screenHeight = document.body.clientHeight
          
                const minDragDomLeft = dragDom.offsetLeft
                const maxDragDomLeft = screenWidth - dragDom.offsetLeft - dragDomWidth
          
                const minDragDomTop = dragDom.offsetTop
                const maxDragDomTop = screenHeight - dragDom.offsetTop - dragDomHeight
          
                // 獲取到的值帶px 正則匹配替換
                let styL = getStyle(dragDom, 'left')
                let styT = getStyle(dragDom, 'top')
          
                if (styL.includes('%')) {
                  styL = +document.body.clientWidth * (+styL.replace(/\%/g, '') / 100)
                  styT = +document.body.clientHeight * (+styT.replace(/\%/g, '') / 100)
                } else {
                  styL = +styL.replace(/\px/g, '')
                  styT = +styT.replace(/\px/g, '')
                }
          
                document.onmousemove = (item) => {
                  // 通過事件委托,計算移動的距離
                  let left = item.clientX - disX
                  let top = item.clientY - disY
          
                  // 邊界處理
                  if (-(left) > minDragDomLeft) {
                    left = -minDragDomLeft
                  } else if (left > maxDragDomLeft) {
                    left = maxDragDomLeft
                  }
          
                  if (-(top) > minDragDomTop) {
                    top = -minDragDomTop
                  } else if (top > maxDragDomTop) {
                    top = maxDragDomTop
                  }
          
                  // 移動當前元素
                  dragDom.style.cssText += `;left:${left + styL}px;top:${top + styT}px;`
          
                  // emit onDrag event
                  vnode.child.$emit('dragDialog')
                }
          
                document.onmouseup = () => {
                  document.onmousemove = null
                  document.onmouseup = null
                }
              }
            }
          }

          index.js

          import drag from './drag'
          
          const install = (Vue) => {
            Vue.directive('el-drag-dialog', drag)
          }
          
          if (window.Vue) {
            window['el-drag-dialog'] = drag
            Vue.use(install); // eslint-disable-line
          }
          
          drag.install = install
          export default drag

          在main.js中引用:

          import elDragDialog from '@/dialogDrag';//自定義dialog拖拽,此路徑為src/dialogDrag的文件
          
          Vue.use(elDragDialog);

          最后在你使用 Dialog標簽 的時候加 v-el-drag-dialog屬性 就可實現拖拽

          使用:


          主站蜘蛛池模板: 久久精品免费一区二区三区| 能在线观看的一区二区三区| 无码精品蜜桃一区二区三区WW| 中文字幕aⅴ人妻一区二区| 亚洲福利视频一区二区三区| 一区二区三区四区精品| 亚洲日韩国产一区二区三区在线 | 区三区激情福利综合中文字幕在线一区| 好湿好大硬得深一点动态图91精品福利一区二区 | 鲁丝片一区二区三区免费| 精品国产免费观看一区| 中文字幕一区二区三匹| 亚州日本乱码一区二区三区| 亚洲欧洲一区二区三区| 亚洲AV网一区二区三区| 中文字幕无线码一区2020青青| 亚洲av鲁丝一区二区三区| 一区二区三区免费视频播放器 | 国产精久久一区二区三区| 欧洲亚洲综合一区二区三区| 亚洲国产福利精品一区二区| 中文字幕人妻无码一区二区三区 | 亚洲一区二区三区丝袜| 无码精品一区二区三区在线| 夜夜嗨AV一区二区三区| 色老板在线视频一区二区 | 亚洲一区二区三区不卡在线播放| 中文字幕一区在线观看| 波多野结衣高清一区二区三区| 国产精品一区二区资源| 国产伦精品一区二区三区视频小说| 中文字幕无码不卡一区二区三区| 亚洲美女视频一区| 精品视频一区二区三区四区| 日韩一区二区视频| 欧美日韩国产免费一区二区三区| 亚洲一区欧洲一区| 在线成人综合色一区| 国产福利在线观看一区二区| 一区二区三区视频网站| 国产在线视频一区|