Browse Source

暂时屏蔽鼠标右键

master
xyiege 5 months ago
parent
commit
0bf08b7ecc
  1. 64
      vue/afvue/src/views/Sfilecompare.vue

64
vue/afvue/src/views/Sfilecompare.vue

@ -6,7 +6,8 @@
<!-- 选择服务器 --> <!-- 选择服务器 -->
<select class="selbox" name="fsip" ref="fsip" @change="changeSer"> <select class="selbox" name="fsip" ref="fsip" @change="changeSer">
<option value="0">请选择源服务器</option> <option value="0">请选择源服务器</option>
<option v-for="item in uslist" :value="item.addr + ':' + item.port">{{ item.addr + ':' + item.port }} <option v-for="item in uslist" :value="item.addr + ':' + item.port">{{ item.addr + ':' + item.port
}}
</option> </option>
</select> </select>
<input name="path" class="inputbox" type="text" placeholder="/" autocomplete="off" v-model="fspath"> <input name="path" class="inputbox" type="text" placeholder="/" autocomplete="off" v-model="fspath">
@ -15,8 +16,9 @@
</div> </div>
<div class="sflist"> <div class="sflist">
<ul> <ul>
<li v-for="item in fsclist" :key="item" @contextmenu.prevent="showMenu" @click="hideMenu"> <li v-for="(item, index) in fsclist" :key="item"
<input type="checkbox" :value="item.path" class="sfchkbox" /> :data-index="index">
<input type="checkbox" :value="item.path" class="sfchkbox" :name="'fsbox' + index" :ref="'fsbox' + index"/>
<a class="haschild" @click="goIntoDir(item.path, 1)" v-if="item.isdir">{{ item.path }}</a> <a class="haschild" @click="goIntoDir(item.path, 1)" v-if="item.isdir">{{ item.path }}</a>
<span v-else>{{ item.path }}</span> <span v-else>{{ item.path }}</span>
<!-- <!--
@ -39,7 +41,8 @@
<!-- 选择服务器 --> <!-- 选择服务器 -->
<select class="selbox" name="ssip" ref="ssip"> <select class="selbox" name="ssip" ref="ssip">
<option value="0">请选择源服务器</option> <option value="0">请选择源服务器</option>
<option v-for="item in uslist" :value="item.addr + ':' + item.port">{{ item.addr + ':' + item.port }} <option v-for="item in uslist" :value="item.addr + ':' + item.port">{{ item.addr + ':' + item.port
}}
</option> </option>
</select> </select>
<input name="path" class="inputbox" type="text" placeholder="/" autocomplete="off" v-model="sspath"> <input name="path" class="inputbox" type="text" placeholder="/" autocomplete="off" v-model="sspath">
@ -63,7 +66,8 @@
</div> </div>
<!-- 右键菜单 --> <!-- 右键菜单 -->
<div class="sftrans" v-if="isMenuVisible" @contextmenu.prevent :style="{ top: menuTop + 'px', left: menuLeft + 'px' }"> <div class="sftrans" v-if="isMenuVisible" @contextmenu.prevent
:style="{ top: menuTop + 'px', left: menuLeft + 'px' }">
<ul class="sfbcon"> <ul class="sfbcon">
<li><span href="javascript:void(0)" @click="handleMenuAction('upload')">同步文件</span></li> <li><span href="javascript:void(0)" @click="handleMenuAction('upload')">同步文件</span></li>
<li><span href="javascript:void(0)" @click="handleMenuAction('download')">压缩下载</span></li> <li><span href="javascript:void(0)" @click="handleMenuAction('download')">压缩下载</span></li>
@ -91,7 +95,9 @@ export default {
fspath: '/', // fspath: '/', //
sspath: '/', // sspath: '/', //
isMenuVisible: true, // chkfiles: [], //
isMenuVisible: false, //
menuTop: 0, // menuTop: 0, //
menuLeft: 0, // menuLeft: 0, //
} }
@ -100,7 +106,7 @@ export default {
// //
document.addEventListener('click', (event) => { document.addEventListener('click', (event) => {
// //
if(this.isMenuVisible){ if (this.isMenuVisible) {
this.hideMenu() this.hideMenu()
} }
}) })
@ -233,16 +239,23 @@ export default {
}, },
// //
showMenu(event) { showMenu(event) {
console.log(event)
// //
this.menuTop = event.clientY; this.menuTop = event.clientY;
this.menuLeft = event.clientX; this.menuLeft = event.clientX;
// //
this.adjustMenuPosition(); this.adjustMenuPosition();
// //
this.isMenuVisible = true; this.isMenuVisible = true;
//
let index = event.target.dataset.index
// box
let chkbox = document.getElementsByName('fsbox' + index)
chkbox[0].checked = true
console.log(chkbox,"chkbox")
//
// let schkbox = document.getElementsByName('ssbox'+index)
// schkbox[0].checked = true
}, },
// //
hideMenu() { hideMenu() {
@ -267,10 +280,24 @@ export default {
// //
handleMenuAction(action) { handleMenuAction(action) {
console.log(`执行操作: ${action}`); console.log(`执行操作: ${action}`);
switch(action){
case 'upload':
this.uploadFile()
break;
}
// //
this.hideMenu(); // this.hideMenu(); //
}, },
//
uploadFile(e){
//
console.log(e,"upload")
// itname.checked = true
// let chkbox =document.getElementsByName('ssbox'+index)
}
} }
} }
</script> </script>
@ -381,6 +408,8 @@ export default {
.sfcon .sflist ul li .sfchkbox { .sfcon .sflist ul li .sfchkbox {
margin-right: 12px; margin-right: 12px;
width: 18px;
height: 18px;
} }
.sfcon .sflist .haschild { .sfcon .sflist .haschild {
@ -396,7 +425,7 @@ export default {
/* 传输功能区 */ /* 传输功能区 */
.sftrans { .sftrans {
position: fixed; position: fixed;
width: 200px; width: 200px;
height: 120px; height: 120px;
z-index: 99; z-index: 99;
background-color: #f5f5f5; background-color: #f5f5f5;
@ -408,20 +437,23 @@ export default {
margin-left: auto; margin-left: auto;
margin-right: auto; margin-right: auto;
background-color: #fff; background-color: #fff;
padding:10px; padding: 10px;
} }
.sftrans .sfbcon li{
.sftrans .sfbcon li {
list-style: none; list-style: none;
height: 30px; height: 30px;
line-height: 30px; line-height: 30px;
} }
.sftrans .sfbcon li:hover{
.sftrans .sfbcon li:hover {
background-color: #00bd7e; background-color: #00bd7e;
color: #fff; color: #fff;
cursor: default; cursor: default;
} }
.sftrans .sfbcon li span{
padding-left: 12px; .sftrans .sfbcon li span {
padding-left: 12px;
} }
.sftrans .sfbcon li.divider{ .sftrans .sfbcon li.divider{
height: 1px; height: 1px;

Loading…
Cancel
Save