js右键菜单 可以直接使用

/** *****以下内容可以修改************** */
// mname是菜单对应的名称,数组的个数必须与下面murl对应
var keyword;
var mname;
var murl;
/**
 * 获取选中文字
 * @return
 */
function getSelectedText() {
 var text ;
 if (window.getSelection) {
  text = window.getSelection().toString();
 }else if (document.getSelection) {
  text = document.getSelection();
 }else if (document.selection) {
  text = document.selection.createRange().text;
 }
 //alert(text+"----"+keyword);
 if(text!=""){
  keyword = text;
 }
}

function closeyou(){
 event.returnValue = false;
}

/**
 * 复制
 * @param keyword
 * @return
 */
function copyit(textit) {
 if (window.clipboardData) {
  window.clipboardData.setData("Text",textit);
 } else {
  var flashcopier = 'flashcopier';
  if(!document.getElementById(flashcopier)) {
  var divholder = document.createElement('div');
  divholder.id = flashcopier;
  document.body.appendChild(divholder);
 }
 document.getElementById(flashcopier).innerHTML = '';
 var divinfo = '<embed src="_clipboard.swf" FlashVars="clipboard='+textit+'" width="0" height="0" type="application/x-shockwave-flash"></embed>';
 document.getElementById(flashcopier).innerHTML = divinfo;
 }
}


var ph = 21, mwidth = 50;// ph每条选项的高度,菜单的总宽度
var bgc = "#eee", txc = "black";// 菜单没有选中的背景色和文字色
var cbgc = "darkblue", ctxc = "white";// 菜单选中的选项背景色和文字色

/** **************以下代码请不要修改***************** */
var mover = "this.style.background='" + cbgc + "';this.style.color='" + ctxc + "';"
var mout = "this.style.background='" + bgc + "';this.style.color='" + txc + "';"

function fresh() {
 mlay.style.background = bgc;
 mlay.style.color = txc;
 mlay.style.width = mwidth;
 mlay.style.height = mname.length * ph;
 var h = "<table width=60 height=" + mname.length * ph
   + "px cellpadding=0 cellspacing=0 border=1>";
 var i = 0;
 for (i = 0; i < mname.length; i++) {
  h += "<tr align=left height=" + ph + " onclick=\"" + murl[i]
    + "\" onMouseover=\"" + mover + "\" onMouseout=\"" + mout
    + "\"><td style='font-size:9pt;'>&nbsp;" + mname[i]+"</td></tr>";
 }
 h += "</table>";
 //alert(h);
 //document.write(h);
 mlay.innerHTML = h;
}


/**
 * 右键事件
 */
function oncontextmenuTest() {
 /*getSelectedText();
 //没有选择任何文本
 if(keyword == undefined){
  return true; //继续弹出原始的右键菜单
 }*/
 mname = new Array("共享", "修改", "删除"
   );
 //murl是菜单对应的操作,可以是任意javascript代码但是要注意不要在里面输入\",只能用'
 //如果要实现跳转可以这样window.location='url';
 murl = new Array(
   "subNewQuery('"+keyword+"');",
   "copyit('"+keyword+"');",
   "window.open('http://10.137.43.25:8888/searcher','_self','');"
 );
 fresh();
 sctop = document.documentElement.scrollTop; //被卷去的高
 scleft = document.documentElement.scrollLeft;//被卷去的宽
 mlay.style.display = "";
 mlay.style.pixelTop = event.clientY + sctop;
 mlay.style.pixelLeft = event.clientX + scleft;
 
 return false;
}
function showoff() {
 mlay.style.display = "none";
 keyword=undefined;//重新赋给未定义,右击就没菜单了。
}

function subNewQuery(keyword){
 document.getElementById("newkeyword").value=keyword;
 document.getElementById("newquery").submit();
}

猜你喜欢

转载自liuzhiqiang19890403.iteye.com/blog/2123327
今日推荐