獲得鼠標選中文本的事件兼容多種瀏覽器

獲得鼠標選中文本的事件兼容多種瀏覽器

//獲得選中內容方法

function getSelectionField(e){
  var selection = '';
  selection = getIeSelection(e);
  if(selection == ''){
    selection = getFireFoxSelection(e);
  } 
  return selection;
}
function getIeSelection(e) {
  if (window.getSelection) {         
      return window.getSelection().toString(); 
  }
  else  if (document.getSelection) {         
    return document.getSelection();     
  }else   if (document.selection) { 
     return document.selection.createRange().text;    
  } 
}
  
function getFireFoxSelection(e){

  if (e.selectionStart != undefined && e.selectionEnd != undefined) {
   var start = e.selectionStart;         
   var end = e.selectionEnd;     
 
   return e.value.substring(start, end);   
  }else { 
   return "";  
  }
} 



快捷工具欄Demo:

function add_oper_tool(e){

selectContent=getSelectionField(e);
if((selectContent)) { 
var fast_oper_content="<div class='btn-group'  id='fast_oper' style=' position:absolute;display:none;z-index:1000;padding:10px;'> <button class='btn' οnclick='add_term_module()' data-toggle='modal' href='#myModal'>添加術語 </button>  <button class='btn' data-toggle='modal'  οnclick='add_tm_module()' href='#myModal'>添加句對 </button><button οnclick='add_templete_module()' class='btn' data-toggle='modal' href='#myModal'>添加模版</button> <div id='cancel' οnclick='cancel_oper()'></div></div>";
$("body").append(fast_oper_content);
x=e.clientX + document.body.scrollLeft - document.body.clientLeft;
y=e.clientY + document.body.scrollTop - document.body.clientTop;
$("#fast_oper").offset({
top : y,
left :x
}).fadeIn("slow");
}
}




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章