ホームページ >ウェブフロントエンド >jsチュートリアル >複数のブラウザと互換性のある jquery の短い右クリック メニュー_jquery

複数のブラウザと互換性のある jquery の短い右クリック メニュー_jquery

WBOY
WBOYオリジナル
2016-05-16 18:37:28873ブラウズ

复制代代码如下:

$(function(){
document.oncontextmenu =function(){return false;}//屏マスク右键
document.onmousemove=mouseMove;//记录鼠标位置
});
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 $(ドキュメント)。スクロールトップ()};
}

$.fn.extend({RightMenu: function(id,options){options = $.extend({menuList:[]},options);var menuCount=options.menuList.length ;
if (!$("#" id)[0]){
var divMenuList="
    ";
    for(var i=0;idivMenuList ="
  • options.menuList[i].menuName "
  • ";
    }
    divMenuList = "
< /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(){
/*この段階判断ネズミ标页面の最右側または最下側出防止现滚動条{*/
var mw=$('body').width(),mhh =$('html').height(),mbh=$('body').height(),
w=$('#' id).width(),h=$('#' id ).height(),
mh=(mhh>mbh)?mhh:mbh;//最大高比较html体の高さ
if(mhif(mw /*} もちろん直接跳んでも良い*/
$("#" id)。 Hide().css({top:my,left:mx}).show();
}
});
}
});

在線上演示 右键点击测试效果

打包下ダウンロード
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。