婷婷久久综合九色综合,欧美成色婷婷在线观看视频,偷窥视频一区,欧美日本一道道一区二区

<tt id="bu9ss"></tt>
  • <span id="bu9ss"></span>
  • <pre id="bu9ss"><tt id="bu9ss"></tt></pre>
    <label id="bu9ss"></label>

    當(dāng)前位置:首頁 >  站長 >  編程技術(shù) >  正文

    vue添加自定義右鍵菜單的完整實例

     2020-12-10 16:18  來源: 腳本之家   我來投稿 撤稿糾錯

      阿里云優(yōu)惠券 先領(lǐng)券再下單

    這篇文章主要給大家介紹了關(guān)于vue添加自定義右鍵菜單的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

    一、寫原生方法

    1.在所編輯的頁面,需要添加右鍵菜單的元素,綁定contextmenu事件,如下:

    <li
    v-for="item in resourceList"
    :key="item.id"
    @click="handleClickFolder(item)"
    @contextmenu.prevent="openMenu($event,item)"
    >
    ...
    </li>

    2.在頁面編寫右鍵菜單內(nèi)容:

    <ul v-show="visible" :style="{left:left+'px',top:top+'px'}" class="contextmenu">
    <!-- <li v-if="rightClickItem.fileType==99" @click="handleClickFolder(rightClickItem)">打開</li>
    <li @click="handleDelete(rightClickItem)">刪除</li>
    <li @click="handleDownloadFile(rightClickItem)" v-if="rightClickItem.fileType!=99">下載</li>
    <li @click="handlePreviewFile(rightClickItem)" v-if="rightClickItem.fileType!=99">預(yù)覽</li>
    <li @click="handleUpdate(rightClickItem)">編輯</li> -->
    <li>內(nèi)容</li>
    </ul>

    3.在data()中定義需要的變量屬性

    data() {
    return {
    visible: false,
    top: 0,
    left: 0
    }
    }

    4.觀察visible的變化,來觸發(fā)關(guān)閉右鍵菜單,調(diào)用關(guān)閉菜單的方法

    watch: {
    visible(value) {
    if (value) {
    document.body.addEventListener('click', this.closeMenu)
    } else {
    document.body.removeEventListener('click', this.closeMenu)
    }
    }
    }

    5.在method中定義打開右鍵菜單和關(guān)閉右鍵菜單的兩個方法

    openMenu(e, item) {
    this.rightClickItem = item;

    var x = e.pageX;
    var y = e.pageY;

    this.top = y;
    this.left = x;

    this.visible = true;
    },
    closeMenu() {
    this.visible = false;
    }

    6.在style中寫右鍵菜單的樣式

    .contextmenu {
    margin: 0;
    background: #fff;
    z-index: 3000;
    position: absolute;
    list-style-type: none;
    padding: 5px 0;
    border-radius: 4px;
    font-size: 12px;
    font-weight: 400;
    color: #333;
    box-shadow: 2px 2px 3px 0 rgba(0, 0, 0, 0.3);
    }

    .contextmenu li {
    margin: 0;
    padding: 7px 16px;
    cursor: pointer;
    }

    .contextmenu li:hover {
    background: #eee;
    }

    參考鏈接

    二、使用插件vue-context-menu

    demo地址

    github地址

    安裝:

    npm install vue-contextmenu --save

    引用:

    import VueContextMenu from 'vue-contextmenu'
    Vue.use(VueContextMenu)

    使用:

    <template>
    <div id="app" @contextmenu="showMenu"
    style="width: 100px;height: 100px;margin-top: 20px;background: red;">
    <vue-context-menu :contextMenuData="contextMenuData"
    @savedata="savedata"
    @newdata="newdata"></vue-context-menu>
    </div>
    </template>
    <script>
    export default {
    name: 'app',
    data () {
    return {
    // contextmenu data (菜單數(shù)據(jù))
    contextMenuData: {
    // the contextmenu name(@1.4.1 updated)
    menuName: 'demo',
    // The coordinates of the display(菜單顯示的位置)
    axis: {
    x: null,
    y: null
    },
    // Menu options (菜單選項)
    menulists: [{
    fnHandler: 'savedata', // Binding events(綁定事件)
    icoName: 'fa fa-home fa-fw', // icon (icon圖標(biāo) )
    btnName: 'Save' // The name of the menu option (菜單名稱)
    }, {
    fnHandler: 'newdata',
    icoName: 'fa fa-home fa-fw',
    btnName: 'New'
    }]
    }
    }
    },
    methods: {
    showMenu () {
    event.preventDefault()
    var x = event.clientX
    var y = event.clientY
    // Get the current location
    this.contextMenuData.axis = {
    x, y
    }
    },
    savedata () {
    alert(1)
    },
    newdata () {
    console.log('newdata!')
    }
    }
    }
    </script>

    tip:有說不兼容ie的,具體沒有測試

    到此這篇關(guān)于vue添加自定義右鍵菜單的文章就介紹到這了,更多相關(guān)vue添加自定義右鍵菜單內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

    來源:腳本之家

    鏈接:https://www.jb51.net/article/201645.htm

    申請創(chuàng)業(yè)報道,分享創(chuàng)業(yè)好點子。點擊此處,共同探討創(chuàng)業(yè)新機(jī)遇!

    相關(guān)標(biāo)簽
    vue.js

    相關(guān)文章

    • Vue 3自定義指令開發(fā)的相關(guān)總結(jié)

      這篇文章主要介紹了Vue3自定義指令開發(fā)的相關(guān)總結(jié),幫助大家更好的理解和使用vue框架,感興趣的朋友可以了解下

      標(biāo)簽:
      vue.js
    • vue集成一個支持圖片縮放拖拽的富文本編輯器

      文章主要介紹了vue集成一個支持圖片縮放拖拽的富文本編輯器,幫助大家更好的理解和使用vue框架,感興趣的朋友可以了解下。

      標(biāo)簽:
      vue.js
    • vue自定義組件實現(xiàn)雙向綁定

      這篇文章主要為大家詳細(xì)介紹了vue自定義組件實現(xiàn)雙向綁定,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下

      標(biāo)簽:
      vue.js
    • Vue實現(xiàn)隨機(jī)驗證碼功能

      這篇文章主要為大家詳細(xì)介紹了Vue實現(xiàn)隨機(jī)驗證碼功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下

      標(biāo)簽:
      vue.js
    • vue實現(xiàn)樹狀表格效果

      這篇文章主要為大家詳細(xì)介紹了vue實現(xiàn)樹狀表格效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下

      標(biāo)簽:
      vue.js

    熱門排行

    信息推薦