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

Vue自定義元素身上的右鍵事件問(wèn)題

 更新時(shí)間:2023年10月20日 16:53:16   作者:酷酷的橙007  
這篇文章主要介紹了Vue自定義元素身上的右鍵事件問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

在制作網(wǎng)頁(yè)時(shí),我們經(jīng)常需要自定義右鍵事件,實(shí)現(xiàn)我們想要的功能,這里我手寫了一個(gè)基于Vue的鼠標(biāo)右鍵自定義事件,與大家共同分享。

template內(nèi)容

在自己想要改變鼠標(biāo)右鍵事件的dom中(這里以div#demo為例)加入一個(gè)ul,模擬鼠標(biāo)右鍵后的彈框。

prevent屬性可以消除右鍵默認(rèn)事件。

<template>
    <div>
        <div id="demo" @contextmenu.prevent="openMenu($event)">
            <ul v-show="visible" :style="{left:left+'px',top:top+'px'}" class="contextmenu" style="background:red;position:fixed">
                <li>歷史記錄1</li>
                <li>歷史記錄2</li>
                <li>歷史記錄3</li>
                <li>歷史記錄4</li>
            </ul>
        </div>
    </div>
</template>

model層

跟蹤鼠標(biāo)點(diǎn)擊位置控制ul所在的位置,同時(shí)在自己的dom上右鍵點(diǎn)擊ul顯示,點(diǎn)擊body后ul隱藏

export default {
    data() {
        return {
            visible: false,
            top: 0,
            left: 0
        }
    },
    methods: {
        openMenu(e) {
            console.log(e.clientX);
            console.log(e.clientY);
            
            this.left = e.clientX
            this.top = e.clientY

            this.visible = true

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

style問(wèn)題

這塊比較簡(jiǎn)略,就是給div隨便給點(diǎn)樣式,這塊根據(jù)需要改成自己右鍵點(diǎn)擊dom的樣式

#demo {
    width: 50px;
    height: 50px;
    background: pink;
}

在這里插入圖片描述

注:

  • 可以在li元素上添加點(diǎn)擊后的事件。
  • ul不一定需要寫在dom內(nèi),寫在dom里面方便我們查看該ul屬于哪個(gè)dom上的事件,因?yàn)閡l已經(jīng)脫離文本流,相對(duì)鼠標(biāo)位置定位。fixed相對(duì)瀏覽器可視區(qū)移動(dòng)。

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 簡(jiǎn)單談?wù)刅ue 模板各類數(shù)據(jù)綁定

    簡(jiǎn)單談?wù)刅ue 模板各類數(shù)據(jù)綁定

    Vue.js 的模板是基于 DOM 實(shí)現(xiàn)的。這意味著所有的 Vue.js 模板都是可解析的有效的 HTML,且通過(guò)一些特殊的特性做了增強(qiáng)。Vue 模板因而從根本上不同于基于字符串的模板,請(qǐng)記住這點(diǎn)。
    2016-09-09
  • 手寫?Vue3?響應(yīng)式系統(tǒng)(核心就一個(gè)數(shù)據(jù)結(jié)構(gòu))

    手寫?Vue3?響應(yīng)式系統(tǒng)(核心就一個(gè)數(shù)據(jù)結(jié)構(gòu))

    這篇文章主要介紹了手寫?Vue3?響應(yīng)式系統(tǒng)(核心就一個(gè)數(shù)據(jù)結(jié)構(gòu)),響應(yīng)式就是被觀察的數(shù)據(jù)變化的時(shí)候做一系列聯(lián)動(dòng)處理。就像一個(gè)社會(huì)熱點(diǎn)事件,當(dāng)它有消息更新的時(shí)候,各方媒體都會(huì)跟進(jìn)做相關(guān)報(bào)道。這里社會(huì)熱點(diǎn)事件就是被觀察的目標(biāo)
    2022-06-06
  • vue-router跳轉(zhuǎn)頁(yè)面的方法

    vue-router跳轉(zhuǎn)頁(yè)面的方法

    本篇文章主要介紹了vue-router跳轉(zhuǎn)頁(yè)面的方法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-02-02
  • vue組件入門知識(shí)全梳理

    vue組件入門知識(shí)全梳理

    這篇文章主要給大家介紹了關(guān)于vue組件入門知識(shí)的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09
  • Vue路由切換頁(yè)面不更新問(wèn)題解決方案

    Vue路由切換頁(yè)面不更新問(wèn)題解決方案

    這篇文章主要介紹了Vue路由切換頁(yè)面不更新問(wèn)題解決方案,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-07-07
  • vue項(xiàng)目中使用html2canvas解決截圖不全的問(wèn)題

    vue項(xiàng)目中使用html2canvas解決截圖不全的問(wèn)題

    本文主要介紹了vue項(xiàng)目中使用html2canvas解決截圖不全的問(wèn)題
    2023-11-11
  • Vue通過(guò)v-for實(shí)現(xiàn)年份自動(dòng)遞增

    Vue通過(guò)v-for實(shí)現(xiàn)年份自動(dòng)遞增

    這篇文章主要為大家詳細(xì)介紹了Vue通過(guò)v-for實(shí)現(xiàn)年份自動(dòng)遞增,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-09-09
  • Vue中

    Vue中"This dependency was not found"問(wèn)題的解決方法

    這篇文章主要介紹了Vue中"This dependency was not found"的問(wèn)題的解決方法,需要的朋友可以參考下
    2018-06-06
  • vue2使用wangeditor實(shí)現(xiàn)手寫輸入功能

    vue2使用wangeditor實(shí)現(xiàn)手寫輸入功能

    這篇文章主要為大家詳細(xì)介紹了vue2如何使用wangeditor實(shí)現(xiàn)手寫輸入功能,文中的示例代碼講解詳細(xì),具有一定的借鑒價(jià)值,感興趣的小伙伴可以了解下
    2023-12-12
  • Vue3中使用Pinia的方法詳細(xì)介紹

    Vue3中使用Pinia的方法詳細(xì)介紹

    這篇文章主要給大家介紹了關(guān)于Vue3中使用Pinia的相關(guān)資料,pinia是一個(gè)用于vue的狀態(tài)管理庫(kù),類似于vuex,是vue的另一種狀態(tài)管理工具,文中介紹的非常詳細(xì),需要的朋友可以參考下
    2024-01-01

最新評(píng)論