JavaScript實現(xiàn)點擊自制菜單效果
更新時間:2021年02月02日 08:34:04 作者:~噓~禁止想象~
這篇文章主要為大家詳細介紹了JavaScript實現(xiàn)點擊自制菜單效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
本文實例為大家分享了JavaScript實現(xiàn)點擊自制菜單效果的具體代碼,供大家參考,具體內(nèi)容如下
應用場景:當我們希望用戶再點擊右鍵的時候不希望彈出瀏覽器的默認菜單時,需要阻止瀏覽器默認行為,并執(zhí)行我們想要的效果
第一種方式,通過創(chuàng)建元素的方式
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> <style> body { height: 3000px; } .menu { width: 100px; height: 280px; background-color: red; position: absolute; left: 0; top: 0; display: none; } </style> </head> <body> <script> var Bon = true; var menu = null; document.oncontextmenu = function(event) { if (Bon) { menu = document.createElement("div"); menu.classList.add("menu"); document.body.appendChild(menu); menu.style.left = event.pageX + "px"; menu.style.top = event.pageY + "px"; menu.style.display = "block"; Bon = false; event.preventDefault(); } else { menu.style.left = event.pageX + "px"; menu.style.top = event.pageY + "px"; event.preventDefault(); } } document.onmousedown = function(e) { if (e.button == 0) { var menu = document.querySelector(".menu"); document.body.removeChild(menu); Bon = true; } } </script> </body> </html>
第二種:通過隱藏元素的方式
<div class="menu"></div> <script> var menu = document.querySelector(".menu"); document.oncontextmenu = function(event) { menu.style.left = event.pageX + "px"; menu.style.top = event.pageY + "px"; menu.style.display = "block"; event.preventDefault(); } document.onmousedown = function(e) { if (e.button == 0) { menu.style.display = "none"; } } </script>
當我們點擊右鍵時就不會彈出默認的菜單了,彈出了我設置的紅框框。
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
Invalid?Host?header問題該如何解決的幾種方式
Invalid Host header是一個常見的錯誤信息,通常發(fā)生在Web應用程序中,下面這篇文章主要給大家介紹了關于Invalid?Host?header問題該如何解決的幾種方式,需要的朋友可以參考下2024-09-09js實現(xiàn)小球在頁面規(guī)定的區(qū)域運動
這篇文章主要為大家詳細介紹了js控制小球在規(guī)定范圍運動,碰到邊界就改變運動方向,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2020-06-06基于Arcgis for javascript實現(xiàn)百度地圖ABCD marker的效果
本篇文章由腳本之家小編給大家分享的基于Arcgis for javascript實現(xiàn)百度地圖ABCD marker的效果,需要的朋友一起學習吧2015-09-09