javascript实现划词标记划词搜索功能修正版,兼容IE及FF

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>继续看</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>

<body>

<SCRIPT language=JavaScript>
<!--
if (navigator.appName=="Microsoft Internet Explorer") {
document.body.οnlοad=adddiv; 
document.οnmοusedοwn=recordobj; 
document.οndblclick=dbclick; 
document.οnmοuseup=showselect;
} else
{
//firefox
window.οnlοad=adddiv(); 
window.οnmοusedοwn=recordobj; 
window.οndblclick=dbclick(); 
window.οnmοuseup=showselect;
}


var starobj,
isdb=false,
allow=true;

function isallow() 

if(allow){ 
allow=false; 
alert('is closed'); 

else{ 
allow=true; 
alert('is opend'); 

}

function dbclick() 

isdb=true; 
}


function recordobj(evt)  { 

evt = (evt) ? evt : ((window.event) ? window.event : "")
if (evt) {
          starobj = (evt.target) ? evt.target : evt.srcElement
}

}

function showselect(evt) { 

var obj;
var strlen;
evt = (evt) ? evt : ((window.event) ? window.event : "")
if (evt) {
if (evt.target)
{
obj = evt.target;
strlen = window.getSelection().toString();
}
else
{
obj = event.srcElement;
strlen = document.selection.createRange().text;
}
}

var str=""; 
if(obj.tagName!="A"&&obj.tagName!="INPUT"&&obj==starobj&&!isdb&&allow) 





if(strlen.length>0)
{

 str=strlen; 
 



}

 
searchgoogle(str,evt); 

isdb=false; 
}

function searchgoogle(str,evt) 

var obj=document.getElementById("searchgoogle"); 

if(str.toString().length>0) 
{

obj.style.display="block"; 
obj.style.position="absolute"; 
obj.style.zindex=999;

if(navigator.appName=="Microsoft Internet Explorer")
{
obj.style.widht=80;

obj.style.posTop=document.body.scrollTop+event.y-25; 
obj.style.posLeft=document.body.scrollLeft+event.x+5;  
}
else
{
obj.style.width = "100px";
obj.style.top=evt.pageY-25;
obj.style.left=evt.pageX+5;
}
 
 
obj.innerHTML="<a target=_blank href=http://www.google.com/search?ie=UTF-8&oe=UTF-8&q="+encodeURI(str)+" style='BORDER- RIGHT: royalblue thin solid; BORDER-TOP: royalblue thin solid; FONT- WEIGHT: bold; BORDER- LEFT: royalblue thin solid; CLIP: rect(auto auto auto auto); COLOR: #ffffff; BORDER- BOTTOM: royalblue thin solid; BACKGROUND-COLOR: inactivecaption; TEXT- DECORATION: none'>Search It!</a>"; 

else 


obj.style.display="none"; 

}

function adddiv() 
{
var mobj = document.createElement("div"); 
mobj.id="searchgoogle";
document.body.appendChild(mobj); 


//--> 
</SCRIPT>
<INPUT type="button" onClick="isallow()" value="关闭/打开划词功能">
<p>继续看翻译宝</p>
</body>
</html>

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值