久久福利_99r_国产日韩在线视频_直接看av的网站_中文欧美日韩_久久一

您的位置:首頁技術(shù)文章
文章詳情頁

Vue實現(xiàn)div滾輪放大縮小

瀏覽:16日期:2022-09-28 18:35:44

Vue項目中實現(xiàn)div滾輪放大縮小,拖拽效果,類似畫布效果

Vue實現(xiàn)div滾輪放大縮小

1、引入插件vue-draggable-resizable,點我進入GitHub地址。

1)、npm install --save vue-draggable-resizable2)、main.js文件中

import VueDraggableResizable from ’vue-draggable-resizable’import ’vue-draggable-resizable/dist/VueDraggableResizable.css’Vue.component(’vue-draggable-resizable’, VueDraggableResizable)

3)、vue文件中使用

main.js:

import Vue from ’vue’import App from ’./App’import router from ’./router’Vue.config.productionTip = false// iviewimport ViewUI from ’view-design’;import ’view-design/dist/styles/iview.css’;Vue.use(ViewUI)// 拖拽·縮放·畫布插件import VueDraggableResizable from ’vue-draggable-resizable’import ’vue-draggable-resizable/dist/VueDraggableResizable.css’Vue.component(’vue-draggable-resizable’, VueDraggableResizable)new Vue({ el: ’#app’, router, components: { App }, template: ’<App/>’})

vue文件: 只需要關(guān)注引入組件vue-draggable-resizable配置項和handleTableWheel、tableZoom方法即可。

<template> <div class='is'><div > <!-- 引入組件. :lock-aspect-ratio='true':鎖定縱橫比例 :resizable='false': 不可縮放--> <vue-draggable-resizablew='auto'h='auto':grid='[20,40]':x='10':y='10':resizable='false' ><div ref='table' @wheel.prevent='handleTableWheel($event)'> <-- iview表格,無關(guān)緊要,任何div即可 --> <Table:columns='columns1':data='data1'size='small':disabled-hover='true'border ><template slot-scope='{ row, index }' slot='name'> <Tooltip :content='row.name' placement='top' transfer><span @click='handleCellClick(row)'>{{ row.name }}</span> </Tooltip></template> </Table></div> </vue-draggable-resizable></div> </div></template><script>import VueDraggableResizable from 'vue-draggable-resizable';export default { name: 'is', data() {return { columns1: [{ title: 'Name', slot: 'name', width: 120},{ title: 'Age', key: 'age', width: 120},{ title: 'Address', key: 'address', width: 120},{ title: 'Name', key: 'name', width: 120},{ title: 'Age', key: 'age', width: 120},{ title: 'Address', key: 'address', width: 120},{ title: 'Name', key: 'name', width: 120},{ title: 'Age', key: 'age', width: 120},{ title: 'Address', key: 'address', width: 120} ], data1: [{ name: 'John Brown', age: 18, address: 'New York No. 1 Lake Park'},{ name: 'Jim Green', age: 25, address: 'London No. 1 Lake Park', cellClassName: {age: 'demo-table-info-cell-age',address: 'demo-table-info-cell-address' }},{ name: 'Joe Black', age: 30, address: 'Sydney No. 1 Lake Park'},{ name: 'Jon Snow', age: 26, address: 'Ottawa No. 2 Lake Park', cellClassName: {name: 'demo-table-info-cell-name' }},{ name: 'John Brown', age: 18, address: 'New York No. 1 Lake Park'},{ name: 'Jim Green', age: 25, address: 'London No. 1 Lake Park', cellClassName: {age: 'demo-table-info-cell-age',address: 'demo-table-info-cell-address' }},{ name: 'Joe Black', age: 30, address: 'Sydney No. 1 Lake Park'},{ name: 'Jon Snow', age: 26, address: 'Ottawa No. 2 Lake Park', cellClassName: {name: 'demo-table-info-cell-name' }} ]}; }, mounted() {}, methods: {handleTableWheel(event) { let obj = this.$refs.table; return this.tableZoom(obj, event);},tableZoom(obj, event) { // 一開始默認是100% let zoom = parseInt(obj.style.zoom, 10) || 100; // 滾輪滾一下wheelDelta的值增加或減少120 zoom += event.wheelDelta / 12; if (zoom > 0) {obj.style.zoom = zoom + '%'; } return false;},// 單擊單元格事件(用于測試拖拽是否阻止了表格默認事件,無關(guān)緊要)handleCellClick(row) { this.$Message.info('你點擊了' + row.name);} }};</script><style scoped lang='less'>.is { .table {.name { cursor: pointer;} }}// iview表格樣式:iview官網(wǎng)復(fù)制就行,無關(guān)緊要/deep/ .ivu-table { .demo-table-info-row td {background-color: #2db7f5;color: #fff; } td.demo-table-info-column {background-color: #2db7f5;color: #fff; } .demo-table-error-row td {background-color: #ff6600;color: #fff; } .demo-table-info-cell-name {background-color: #2db7f5;color: #fff; } .demo-table-info-cell-age {background-color: #ff6600;color: #fff; } .demo-table-info-cell-address {background-color: #187;color: #fff; }}// 去除畫布中div邊框.vdr { border: none;}</style>

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。

標簽: Vue
相關(guān)文章:
主站蜘蛛池模板: 日韩视频在线观看一区 | 妞干网福利视频 | 在线婷婷 | 午夜精品一区二区三区在线 | 国产乱码精品一区二区三区手机版 | 日韩精品久久理论片 | 国产日韩免费 | 亚洲欧美日韩国产综合精品二区 | 国产大片久久久 | 亚洲一区二区三区四区在线观看 | 性处破╳╳╳高清欧美 | 色婷婷亚洲一区二区三区 | 91超碰在线观看 | 91精品久久久久久久久久入口 | 国产在线视频一区二区 | 国产精品视屏 | 毛片av在线播放 | 亚洲一区二区三区四区在线 | 九九热在线免费视频 | 国产精品国产精品国产专区不卡 | 日韩福利一区二区 | 青娱乐网| 91视频在线免费观看 | 亚洲综合区 | 81精品国产乱码久久久久久 | 亚洲天堂一区 | 国产高清视频在线 | 成人午夜在线视频 | 国产一区二区免费电影 | 欧美性吧 | 成人黄色在线观看 | av在线免费观看网站 | 久久综合一区二区三区 | 九九热这里只有精 | 成人在线一区二区 | 亚洲欧美一区二区三区在线 | 久久综合一区 | 三区视频 | 这里只有精品在线 | 一级毛片免费 | 午夜精品久久久久久久男人的天堂 |