Js實(shí)現(xiàn)自定義右鍵行為
更新時(shí)間:2015年03月26日 11:43:16 投稿:hebedich
本文主要給大家分享的是一則javascript實(shí)現(xiàn)的自定義右鍵行為的小技巧,非常的簡單實(shí)用,有相同需求的小伙伴可以參考下。
自定義右鍵行為(通過事件對象獲得鼠標(biāo)的坐標(biāo)(x,y))
<!doctype html> <html> <head> <meta charset="UTF-8"> <title>demo</title> <style type="text/css"> html{ height:100%; } body{ height:100%; } #mydiv{ width:300px; height:300px; background-color: #ff7400; } #ctxMenu{ background-color: #ff7400; list-style-type: none; position: absolute; padding:0px; border:1px solid #000; visibility: hidden; } </style> </head> <body> <div id="mydiv"></div> <h2 id="show"></h2> <input type="text"id="txt"><span id="help"></span> <ul id="ctxMenu"> <li>上傳</li> <li>下載</li> <li>新建</li> <li>取消</li> </ul> <script type="text/javascript"> var $=function(id){ return document.getElementById(id); }; var h2=$("show"); var ctx=$("ctxMenu"); var txt=$("txt"); var help=$("help"); /* txt.onfocus=function(){ help.innerHTML="請輸入金額"; } txt.onkeydown=function(event){ help.innerHTML=""; var code=event.keyCode; if(!(code>=48&&code<=57||code>=96&&code<=105||code==46||code==8||code==13||code==37||code==39||code==110||code==190)){ event.preventDefault(); } } */ document.body.oncontextmenu=function(event){ event.preventDefault(); var x=event.pageX; var y=event.pageY; ctx.style.left=x+"px"; ctx.style.top=y+"px"; ctx.style.visibility="visible"; } document.body.onclick=function(){ ctx.style.visibility="hidden"; } /* document.body.onmousemove=function(event){ var x=event.pageX; var y=event.pageY; h2.innerHTML=x+":"+y; } */ window.onbeforeunload=function(){ var v=$("txt").value; if(v){ return ""; } } $("mydiv").onclick=function(){ $("show").innerHTML="click"; }; $("mydiv").ondblclick=function(){ $("show").innerHTML="dblclick"; }; $("mydiv").onmouseover=function(){ $("show").innerHTML="mouseover"; this.style.backgroundColor="#2d2d2d"; }; $("mydiv").onmouseout=function(){ $("show").innerHTML="mouseout"; this.style.backgroundColor="pink"; } </script> </body> </html>
以上就是本文給大家分享的全部內(nèi)容了,希望大家能夠喜歡。
請您花一點(diǎn)時(shí)間將文章分享給您的朋友或者留下評論。我們將會由衷感謝您的支持!
相關(guān)文章
Function.prototype.call.apply結(jié)合用法分析示例
昨天在網(wǎng)上看到一個很有意思的js面試題:var a = Function.prototype.call.apply(function(a){return a;}, [0,4,3]);alert(a); 分析步驟如下,感興趣的朋友可以參考下哈2013-07-07JavaScript請求后臺數(shù)據(jù)的常用方法匯總
這篇文章主要介紹了JavaScript請求后臺數(shù)據(jù)的幾種常用方式,本文通過示例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-06-06JS使用正則表達(dá)式實(shí)現(xiàn)常用的表單驗(yàn)證功能分析
這篇文章主要介紹了JS使用正則表達(dá)式實(shí)現(xiàn)常用的表單驗(yàn)證功能,結(jié)合實(shí)例形式分析了JS基于正則表達(dá)式的表單驗(yàn)證功能原理、實(shí)現(xiàn)技巧與操作注意事項(xiàng),需要的朋友可以參考下2020-04-04JS實(shí)現(xiàn)網(wǎng)絡(luò)請求的三種方式梳理
本文主要為大家介紹了基于 XMLHttpRequest、Promise、async/await 等三種異步網(wǎng)絡(luò)請求的寫法,文中的示例代碼講解詳細(xì),感興趣的可以學(xué)習(xí)一下2022-03-03