代碼如下:
$(function(){
document.oncontextmenu=function(){return false;}//屏蔽右鍵
document.onmousemove=mouseMove;//記錄鼠標(biāo)位置
});
var mx=0,my=0;
function mouseMove(ev){Ev=ev||window.event;var mousePos=mouseCoords(Ev);mx=mousePos.x;my=mousePos.y;}
function mouseCoords(ev){
if(ev.pageX||ev.pageY){return{x:ev.pageX,y:ev.pageY};}
return{x:ev.clientX,y:ev.clientY+$(document).scrollTop()};
}
$.fn.extend({RightMenu: function(id,options){options = $.extend({menuList:[]},options);var menuCount=options.menuList.length;
if (!$("#"+id)[0]){
var divMenuList="<div id=/""+id+"/" class=/"div_RightMenu/"><div><ul class='ico'>";
for(var i=0;i<menuCount;i++){
divMenuList+="<li class=/"RMli_"+options.menuList[i].menuclass+"/" onclick=/""+options.menuList[i].clickEvent+"/">"+options.menuList[i].menuName+"</li>";
}
divMenuList += "</ul></div><div>";
$("body").append(divMenuList).find("#"+id).hide().find("li")
.bind("mouseover",function(){$(this).addClass("RM_mouseover");})
.bind("mouseout",function(){$(this).removeClass("RM_mouseover");});
$(document).click(function(){$("#"+id).hide();});
}
return this.each(function(){
this.oncontextmenu=function(){
/*這段 判斷鼠標(biāo)移到頁(yè)面的最右側(cè)或者最下側(cè) 防止出現(xiàn)滾動(dòng)條 {*/
var mw=$('body').width(),mhh=$('html').height(),mbh=$('body').height(),
w=$('#'+id).width(),h=$('#'+id).height(),
mh=(mhh>mbh)?mhh:mbh;//最大高度 比較html與body的高度
if(mh<h+my){my=mh-h;}//超 高
if(mw<w+mx){mx=mw-w;}//超 寬
/*} 當(dāng)然也可以直接跳過(guò)*/
$("#"+id).hide().css({top:my,left:mx}).show();
}
});
}
});
在線演示 右鍵點(diǎn)擊測(cè)試效果
打包下載
新聞熱點(diǎn)
疑難解答
圖片精選