JS实现划词标记与划词搜索功能

网络整理 - 08-16
以下是完整的源代码:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
<html> 
<head> 
<title>Untitled Document</title> 
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"> 
</head> 
<body> 
<SCRIPT language=javascript> 
<!-- 
document.body.onload=adddiv; 
document.onmousedown=recordobj; 
document.ondblclick=dbclick; 
document.onmouseup=showselect; 
var starobj,isdb=false,allow=true; 
function isallow() 

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

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


function dbclick() 

isdb=true; 

function recordobj() 

starobj=event.srcElement; 

function showselect() { 
var str=""; 
if(event.srcElement.tagName!="A"&&event.srcElement.tagName!="INPUT"&&event.srcElement==starobj&&!isdb&&allow) 

var oText=document.selection.createRange(); 
if(oText.text.length>0) 

str=oText.text; 
oText.text="BuB"+oText.text+"EuE"; 

oText.select(); 
event.srcElement.innerHTML=event.srcElement.innerHTML.replace("BuB","<u style='FONT-WEIGHT: bold;COLOR: #ff3366'>").replace("EuE","</u>"); 

searchgoogle(str) 
isdb=false; 

function searchgoogle(str) 

var obj=document.getElementById("searchgoogle"); 
if(str.length>0) 

obj.style.display="block"; 
obj.style.position="absolute"; 
obj.style.zindex=999; 
obj.style.posTop=document.body.scrollTop+event.y-25; 
obj.style.posLeft=document.body.scrollLeft+event.x+5; 
obj.style.widht=80; 
obj.innerHTML="<a target=_blank href=http://www.google.com/search?ie=UTF-8&oe=UTF-8&q="+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>qrasfdasfasfdasfsafasdfsafsafasdfasdfasd</p> 
</body> 
</html>