欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

vue右鍵菜單的簡單封裝

 更新時間:2022年04月08日 14:22:41   作者:橡皮擦不掉的  
這篇文章主要為大家詳細介紹了vue右鍵菜單的簡單封裝,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了vue實現(xiàn)右鍵菜單封裝的具體代碼,供大家參考,具體內(nèi)容如下

封裝一個簡單的右鍵菜單,要求右鍵處出現(xiàn)菜單,點擊除了菜單部分可以關(guān)閉菜單。

組件

<template>
? <div class="ContextMenu" @click="close" v-show="show">
? ? <ul class="menuMain" ref="menuMain" :style="{ top: y, left: x }">
? ? ? <slot></slot>
? ? </ul>
? </div>
</template>

<script>
export default {
? name: "ContextMenu",
? mounted() {
? ? document.addEventListener("contextmenu", this.contextClick);
? },
? data() {
? ? return {
? ? ? x: "0px",
? ? ? y: "0px",
? ? ? show: false
? ? };
? },
? methods: {
? ? //右鍵事件
? ? contextClick(e) {
? ? ? //阻止默認事件
? ? ? e.preventDefault();
? ? ? this.show = true;
? ? ? this.x = e.clientX + "px";
? ? ? this.y = e.clientY + "px";
? ? },
? ? close(e) {
? ? ? //判斷點擊區(qū)域是否是menuMain的子元素 如果不是則關(guān)閉菜單
? ? ? if (!this.$refs.menuMain.contains(e.target)) {
? ? ? ? this.show = false;
? ? ? }
? ? }
? }
};
</script>

<style lang="less" scoped>
.ContextMenu {
? position: fixed;
? width: 100vw;
? height: 100vh;
? top: 0;
? left: 0;
? .menuMain {
? ? position: fixed;
? ? z-index: 100000;
? ? list-style: none;
? ? border-radius: 10px;
? ? padding: 0;
? ? margin: 0;
? ? background-color: #f5f5f5;
? ? overflow: hidden;
? ? li{
? ? ? padding: 20px;
? ? ? cursor: pointer;
? ? ? &:hover{
? ? ? ? background-color: #bdbdbd;
? ? ? }
? ? }
? }
}
</style>

使用

<context-menu>
? ? <li>hello</li>
? ? <li>hello</li>
</context-menu>

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

相關(guān)文章

  • antd upload上傳組件如何獲取服務(wù)端返回數(shù)據(jù)

    antd upload上傳組件如何獲取服務(wù)端返回數(shù)據(jù)

    這篇文章主要介紹了antd upload上傳組件如何獲取服務(wù)端返回數(shù)據(jù)問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • Vuex中的Mutation使用詳解

    Vuex中的Mutation使用詳解

    這篇文章主要介紹了Vuex中的Mutation使用詳解,當(dāng)我們想修改狀態(tài)值,想傳入的值進而進行修改時,你可以向 store.commit 傳入額外的參數(shù),即 mutation 的 載荷,需要的朋友可以參考下
    2023-11-11
  • 深入理解vue路由的使用

    深入理解vue路由的使用

    vue-router是Vue.js官方的路由插件,它和vue.js是深度集成的,適合用于構(gòu)建單頁面應(yīng)用。
    2017-03-03
  • 解決pycharm雙擊但是無法打開的情況

    解決pycharm雙擊但是無法打開的情況

    這篇文章主要介紹了解決pycharm雙擊但是無法打開的情況,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-10-10
  • vue-cli5.0?webpack?采用?copy-webpack-plugin?打包復(fù)制文件的方法

    vue-cli5.0?webpack?采用?copy-webpack-plugin?打包復(fù)制文件的方法

    今天就好好說說vue-cli5.0種使用copy-webpack-plugin插件該如何配置的問題。這里我們安裝的 copy-webpack-plugin 的版本是 ^11.0.0,感興趣的朋友一起看看吧
    2022-06-06
  • Vue.js 實現(xiàn)tab切換并變色操作講解

    Vue.js 實現(xiàn)tab切換并變色操作講解

    這篇文章主要介紹了Vue.js 實現(xiàn)tab切換并變色操作講解,本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下
    2021-09-09
  • Vue基本使用之對象提供的屬性功能

    Vue基本使用之對象提供的屬性功能

    這篇文章主要介紹了Vue基本使用之對象提供的屬性功能實例詳解,非常不錯,具有一定的參考借鑒價值 ,需要的朋友可以參考下
    2019-04-04
  • vue中的正則表達式校驗、驗證

    vue中的正則表達式校驗、驗證

    這篇文章主要介紹了vue中的正則表達式校驗、驗證方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-06-06
  • Vue3 響應(yīng)式 API 及 reactive 和 ref 的用法示例詳解

    Vue3 響應(yīng)式 API 及 reactive 和 ref&

    響應(yīng)式是一種允許以聲明式的方式去適應(yīng)變化的編程范例,這篇文章主要介紹了關(guān)于Vue3響應(yīng)式API及reactive和ref的用法,需要的朋友可以參考下
    2023-06-06
  • Vue.js計算屬性computed與watch(5)

    Vue.js計算屬性computed與watch(5)

    這篇文章主要為大家詳細介紹了Vue.js計算屬性computed與watch,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-12-12

最新評論