用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 相关文章推荐
在IE中调用javascript打开Excel的代码(downmoon原作)
Apr 02 Javascript
js跨域和ajax 跨域问题的实现思路
Sep 05 Javascript
幻灯片带网页设计中的20个奇妙应用示例小结
May 27 Javascript
jQuery控制DIV层实现由大到小,由远及近动画变化效果
Oct 09 Javascript
jQuery插件fullPage.js实现全屏滚动效果
Dec 02 Javascript
你不知道的 javascript【推荐】
Jan 08 Javascript
js实现增加数字显示的环形进度条效果
Feb 05 Javascript
vue element-ui 绑定@keyup事件无效的解决方法
Mar 09 Javascript
vue计算属性无法监听到数组内部变化的解决方案
Nov 06 Javascript
JS数组方法join()用法实例分析
Jan 18 Javascript
webpack中的模式(mode)使用详解
Feb 20 Javascript
javascript实现多边形碰撞检测
Oct 24 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
十天学会php之第二天
2006/10/09 PHP
探讨如何把session存入数据库
2013/06/07 PHP
WordPress中对访客评论功能的一些优化方法
2015/11/24 PHP
PHP实现的简单排列组合算法应用示例
2017/06/20 PHP
理解JSON:3分钟课程
2011/10/28 Javascript
关于JS字符串函数String.replace()
2013/04/07 Javascript
jQuery学习笔记(1)--用jQuery实现异步通信(用json传值)具体思路
2013/04/08 Javascript
Node.js与PHP、Python的字符处理性能对比
2014/07/06 Javascript
js实现同一页面多个运动效果的方法
2015/04/10 Javascript
微信小程序 less文件编译成wxss文件实现办法
2016/12/05 Javascript
jQueryeasyui 中如何使用datetimebox 取两个日期间相隔的天数
2017/06/13 jQuery
web前端vue之CSS过渡效果示例
2018/01/10 Javascript
vue.js实现带日期星期的数字时钟功能示例
2018/08/28 Javascript
React 源码中的依赖注入方法
2018/11/07 Javascript
js模拟F11页面全屏显示
2019/09/17 Javascript
javascript绘制简单钟表效果
2020/04/07 Javascript
[01:08:10]2014 DOTA2国际邀请赛中国区预选赛 SPD-GAMING VS LGD-CDEC
2014/05/22 DOTA
利用Python脚本在Nginx和uwsgi上部署MoinMoin的教程
2015/05/05 Python
详解在Python中处理异常的教程
2015/05/24 Python
python中is与双等于号“==”的区别示例详解
2017/11/21 Python
Python的bit_length函数来二进制的位数方法
2019/08/27 Python
Python操作SQLite/MySQL/LMDB数据库的方法
2019/11/07 Python
python实现超市商品销售管理系统
2019/11/22 Python
Python多重继承之菱形继承的实例详解
2020/02/12 Python
wxPython修改文本框颜色过程解析
2020/02/14 Python
自定义Django Form中choicefield下拉菜单选取数据库内容实例
2020/03/13 Python
教你如何用python操作摄像头以及对视频流的处理
2020/10/12 Python
TobyDeals美国:在电子产品上获得最好的优惠和折扣
2019/08/11 全球购物
青年文明号事迹材料
2014/01/18 职场文书
感恩小明星事迹材料
2014/05/23 职场文书
初中学校对照检查材料
2014/08/19 职场文书
小学班级特色活动方案
2014/08/31 职场文书
小学教师自我剖析材料
2014/09/29 职场文书
见习报告的格式
2014/11/04 职场文书
2014年大学生工作总结
2014/11/20 职场文书
Mysql中 unique列插入重复值该怎么解决呢
2021/05/26 MySQL