基于jquery的页面划词搜索JS


Posted in Javascript onSeptember 14, 2010

基于Jquery修改,以下为全部脚本

//划词搜索 
var GLS = {}; 
GLS.startObj = null; 
GLS.isdb = false; 
GLS.allow = true; 
GLS.isallow = function() { 
if (GLS.allow) { 
GLS.allow = false; 
alert('Google搜索已关闭'); 
} 
else { 
GLS.allow = true; 
alert('Google搜索已打开'); 
} 
}; 
GLS.dblclick = function() { 
GLS.isdb = true; 
}; 
GLS.mousedown = function(evt) { 
evt = (evt) ? evt : ((window.event) ? window.event : ""); 
if (evt) { 
GLS.startObj = (evt.target) ? evt.target : evt.srcElement; 
} 
}; 
GLS.mouseup = function(evt) { 
var obj; 
var strlen; 
evt = (evt) ? evt : ((window.event) ? window.event : ""); 
if (evt) { 
obj = (evt.target) ? evt.target : evt.srcElement; 
strlen = window.getSelection ? window.getSelection().toString() : document.selection.createRange().text; 
} 
var str = ""; 
if (obj.tagName != "A" && obj.tagName != "INPUT" && obj == GLS.startObj && !GLS.isdb && GLS.allow) { 
if (strlen.length > 0) { 
str = strlen; 
} 
} 
GLS.search(str, evt); 
GLS.isdb = false; 
}; 
GLS.search = function(str, evt) { 
var obj = $("#GLSearch"); 
var sDivWidth = 88; //检索框“Google搜索”的宽度 
if (str.toString().length > 0) { 
var windowWidth; //窗口的宽 
//取得窗口的宽 
if (self.innerWidth) { 
windowWidth = self.innerWidth; 
} else if (document.documentElement && document.documentElement.clientWidth) { 
windowWidth = document.documentElement.clientWidth; 
} else if (document.body) { 
windowWidth = document.body.clientWidth; 
} 
obj.css({ 'display': 'block', 'position': 'absolute', 'zindex': '10000' }); 
var rX, rX, wT; 
if ($.browser.msie) { 
wT = (evt.clientX + sDivWidth) - windowWidth; 
rY = document.documentElement.scrollTop + evt.clientY; 
rX = document.documentElement.scrollLeft + evt.clientX; 
rY = (evt.clientY < 25) ? rY + 5 : rY - 25; 
rX = (wT > 0) ? rX - wT : rX + 5; 
} 
else { 
var sT = (document.documentElement.scrollTop > 0) ? document.documentElement.scrollTop : document.body.scrollTop; 
wT = (evt.pageX + sDivWidth) - windowWidth; 
rY = ((evt.pageY - sT) < 25) ? evt.pageY + 5 : evt.pageY - 25; 
rX = (wT > 0) ? evt.pageX - wT : evt.pageX + 5; 
} 
obj.css("top", rY); 
obj.css("left", rX); 
obj.html("<a class='GL_s' target='_blank' href='http://www.google.com/search?ie=UTF-8&oe=UTF-8&q=" + encodeURIComponent(str) + "'>Google搜索</a>"); 
} 
else { 
obj.css("display", "none"); 
} 
}; //页面加载 
$(document).ready(function() { 
$(document.body).append("<div id='GLSearch'></div>"); 
$(document).mousedown(GLS.mousedown).dblclick(GLS.dblclick).mouseup(GLS.mouseup); 
});------------附上CSS/*search*/ 
a.GL_s{width:68px;height:20px;display:block;border:solid 1px #2b7ab7;line-height:20px;padding-left:18px;color:#084f10;font-size:12px;font-weight:bold;background:url(search.gif) no-repeat left;text-decoration:none;} 
a.GL_s:link{filter:alpha(opacity=71);-moz-opacity:0.7;opacity: 0.7;} 
a.GL_s:hover{filter:alpha(opacity=100);-moz-opacity:1.0;opacity: 1.0;}----------search.gif图片

基于jquery的页面划词搜索JS
Javascript 相关文章推荐
JavaScript实际应用:innerHTMl和确认提示的使用
Jun 22 Javascript
对google个性主页的拖拽效果的js的完整注释[转]
Apr 10 Javascript
Extjs Gird 支持中文拼音排序实现代码
Apr 15 Javascript
JSON+HTML实现国家省市联动选择效果
May 18 Javascript
jQuery实现分章节锚点“回到顶部”动画特效代码
Oct 23 Javascript
基于JavaScript实现根据手机定位获取当前具体位置(X省X市X县X街道X号)
Dec 29 Javascript
Angular.Js的自动化测试详解
Dec 09 Javascript
Canvas实现放射线动画效果
Feb 15 Javascript
Mint UI 基于 Vue.js 移动端组件库
Nov 07 Javascript
手动下载Chrome并解决puppeteer无法使用问题
Nov 12 Javascript
解决vue单页面修改样式无法覆盖问题
Aug 05 Javascript
vue-父子组件和ref实例详解
Nov 10 Javascript
基于Jquery的实现回车键Enter切换焦点
Sep 14 #Javascript
js输出列表实现代码
Sep 12 #Javascript
JavaScript日历实现代码
Sep 12 #Javascript
某页码显示的helper 少量调整,另附js版
Sep 12 #Javascript
网页中CDATA标记的说明
Sep 12 #Javascript
JavaScript小技巧 2.5 则
Sep 12 #Javascript
让JavaScript拥有类似Lambda表达式编程能力的方法
Sep 12 #Javascript
You might like
PHP JSON 数据解析代码
2010/05/26 PHP
php更改目录及子目录下所有的文件后缀扩展名的代码
2010/10/12 PHP
php传值和传引用的区别点总结
2019/11/19 PHP
JScript内置对象Array中元素的删除方法
2007/03/08 Javascript
在线编辑器的实现原理(兼容IE和FireFox)
2007/03/09 Javascript
javascript showModalDialog,open取得父窗口的方法
2010/03/10 Javascript
基于JQuery的asp.net树实现代码
2010/11/30 Javascript
kmock javascript 单元测试代码
2011/02/06 Javascript
js实现翻页后保持checkbox选中状态的实现方法
2012/11/03 Javascript
JQuery入门——用one()方法绑定事件处理函数(仅触发一次)
2013/02/05 Javascript
js函数内变量的作用域分析
2015/01/12 Javascript
jqueryMobile使用示例分享
2016/01/12 Javascript
js自定义select下拉框美化特效
2016/05/12 Javascript
jQuery 获取遍历获取table中每一个tr中的第一个td的方法
2016/10/05 Javascript
Angularjs自定义指令实现三级联动 选择地理位置
2017/02/13 Javascript
JavaScript基础心法 数据类型
2018/03/05 Javascript
前端插件之Bootstrap Dual Listbox使用教程
2019/07/23 Javascript
前端使用crypto.js进行加密的函数代码
2020/08/16 Javascript
浅析JavaScript预编译和暗示全局变量
2020/09/03 Javascript
[01:46]辉夜杯—打造中国DOTA新格局
2015/12/25 DOTA
在Python的循环体中使用else语句的方法
2015/03/30 Python
python统计字符的个数代码实例
2020/02/07 Python
python使用OpenCV模块实现图像的融合示例代码
2020/04/10 Python
Python中socket网络通信是干嘛的
2020/05/27 Python
德国化妆品和天然化妆品网上商店:kosmetikfuchs.de
2017/06/09 全球购物
宣传策划类求职信范文
2014/01/31 职场文书
个人简历中自我评价
2014/02/11 职场文书
经典商业广告词
2014/03/13 职场文书
财产保全担保书范文
2014/04/01 职场文书
珍惜时间演讲稿
2014/05/14 职场文书
拓展策划方案
2014/06/03 职场文书
科技节口号
2014/06/19 职场文书
公益广告标语
2014/06/19 职场文书
法人代表身份证明书及授权委托书
2014/09/16 职场文书
学习焦裕禄先进事迹心得体会
2016/01/23 职场文书
python_tkinter事件类型详情
2022/03/20 Python