用JavaScript和注册表脚本实现右键收藏Web页选中文本


Posted in Javascript onJanuary 28, 2007

前两天在网上发现一个很好的站点,是用来做资料收藏的(http://wolf.360doc.com)。
    这个网站提供了这么一个功能,可以直接将你选中的文字收藏起来,当时觉得很神奇的。后来研究了一下,发现用JavaScript和注册表脚本就可以实现这样的功能。
    右键收藏页面代码如下(我的收藏页面命名为rightClick.jsp):

<html>  
<script LANGUAGE="JavaScript">  
if (external.menuArguments)   
{  
  var selText = "";  
  var strTitle = escape(external.menuArguments.document.title);  
  var strURL = escape(external.menuArguments.location.href);    var doc = external.menuArguments.document;  
  if ((doc.selection.type == "None") || (doc.selection.type == "none"))  
  {  
     alert("请选中网页上欲保存的文字和图片后再收藏!");  
  }  
  else  
  {  
     selText = doc.selection.createRange().text;  
     if (selText == "")  
     {  
        alert("请选中网页上欲保存的文字和图片后再收藏!");  
     }  
     else  
     {  
        external.menuArguments.document.execCommand("Copy");  
        var objChild;                           // Window  
        var reWork = new RegExp('object','gi'); // Regular expression  
        objChild = window.open("SaveMenu.jsp?title="+strTitle+"&url="+strURL,"objChild","toolbar=no,menubar=no,resizable=yes,location=no,status=yes,z-look=yes,alwaysRaised=yes,scrollbars=no");  
        if(!reWork.test(String(objChild)))  
          alert("文章收藏页面被拦截!\r\n请设定你安装的拦截弹出窗口软件,使当前页面不被拦截!");  
     }  
   }    
}   
</script>  
</html> 

    文本显示页面代码如下(我的收藏页面命名为SaveMenu.jsp):   
<HTML>  
 <HEAD>  
  <title>网络收藏</title>  
<script language="JavaScript">  <!-- hide me  
function Preloader()  
{  
  var Editor1 = document.getElementById('TextBox');  
  textRange = Editor1.createTextRange();  
  textRange.execCommand("Paste");  
}  
    
-->  
</script>  
</HEAD>  
 <body vLink="#261cdc" link="#261cdc" leftMargin="0" topMargin="5" onload="setTimeout('Preloader();',1000);">  
 <p title="网络收藏的文本框">网络收藏的文本框</p>  
 <textarea name="TextBox" id="TextBox" style="height:300px;width:100%;"></textarea>     
 </body>  
</HTML> 
  
注册表脚本如下:   
Windows Registry Editor Version 5.00  [HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\MenuExt]  
[HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\MenuExt\Localhost Test]  
@="http://10.1.1.19:8080/test/rightClick.jsp" 
 

       大家如果有兴趣可以自己试试!

Javascript 相关文章推荐
用Javascript 获取页面元素的位置的代码
Sep 25 Javascript
基于jQuery1.9版本如何判断浏览器版本类型
Jan 12 Javascript
JavaScript预解析及相关技巧分析
Apr 21 Javascript
纯JS实现可拖拽表单的简单实例
Sep 02 Javascript
jQGrid Table操作列中点击【操作】按钮弹出按钮层的实现代码
Dec 05 Javascript
ES6新特性八:async函数用法实例详解
Apr 21 Javascript
vue v-on监听事件详解
May 17 Javascript
详解webpack进阶之loader篇
Aug 23 Javascript
vue实现城市列表选择功能
Jul 16 Javascript
微信小程序实现原生步骤条
Jul 25 Javascript
js 实现watch监听数据变化的代码
Oct 13 Javascript
解决vuecli3中img src 的引入问题
Aug 04 Javascript
用js自动判断浏览器分辨率的代码
Jan 28 #Javascript
innerHTML,outerHTML,innerTEXT三者之间的区别
Jan 28 #Javascript
一个无限级XML绑定跨框架菜单(For IE)
Jan 27 #Javascript
网页javascript精华代码集
Jan 24 #Javascript
一页面多XMLHttpRequest对象
Jan 22 #Javascript
javascript 播放器 控制
Jan 22 #Javascript
JAVASCRIPT HashTable
Jan 22 #Javascript
You might like
smarty section简介与用法分析
2008/10/03 PHP
精通php的十大要点(上)
2009/02/04 PHP
php cli 方式 在crotab中运行解决
2010/02/08 PHP
smarty巧妙处理iframe中内容页的代码
2012/03/07 PHP
MySql数据库查询结果用表格输出PHP代码示例
2015/03/20 PHP
深入php内核之php in array
2015/11/10 PHP
JS中简单的实现像C#中using功能(有源码下载)
2007/01/09 Javascript
根据鼠标的位置动态的控制层的位置
2009/11/24 Javascript
基于jquery的15款幻灯片插件
2011/04/10 Javascript
JQuery实现简单时尚快捷的气泡提示插件
2012/12/20 Javascript
js AppendChild与insertBefore用法详细对比
2013/12/16 Javascript
jQuery插件slides实现无缝轮播图特效
2015/04/17 Javascript
javascript框架设计之框架分类及主要功能
2015/06/23 Javascript
vue.js 图片上传并预览及图片更换功能的实现代码
2018/08/27 Javascript
JS+canvas画布实现炫酷的旋转星空效果示例
2019/02/13 Javascript
React 实现车牌键盘的示例代码
2019/12/20 Javascript
[02:52]2017DOTA2国际邀请赛中国区预选赛晋级之路
2017/07/03 DOTA
python求解水仙花数的方法
2015/05/11 Python
Python+request+unittest实现接口测试框架集成实例
2018/03/16 Python
Python 加密与解密小结
2018/12/06 Python
对python中的try、except、finally 执行顺序详解
2019/02/18 Python
命令行运行Python脚本时传入参数的三种方式详解
2019/10/11 Python
Python脚本操作Excel实现批量替换功能
2019/11/20 Python
PyCharm License Activation激活码失效问题的解决方法(图文详解)
2020/03/12 Python
django实现后台显示媒体文件
2020/04/07 Python
在Windows上安装和配置 Jupyter Lab 作为桌面级应用程序教程
2020/04/22 Python
HTML5 Canvas实现360度全景图的示例代码
2018/01/29 HTML / CSS
idealfit英国:世界领先的女性健身用品和运动衣物品牌
2017/11/25 全球购物
美国手工艺品市场的领导者:Annie’s
2019/04/04 全球购物
英国最大的独立摄影零售商:Park Cameras
2019/11/27 全球购物
The Outnet亚太地区:折扣设计师时装店
2019/12/05 全球购物
Pharmacy Online中文直邮网站:澳洲大型药房
2020/06/27 全球购物
用C或者C++语言实现SOCKET通信
2015/02/24 面试题
优秀高中生事迹材料
2014/02/11 职场文书
消防宣传口号
2014/06/16 职场文书
文艺委员竞选稿
2015/11/19 职场文书