最近注意到新浪博客有个小功能,就是当鼠标选中一段文字时会浮现一个小图片,点击这个图片可以把选中内容发送到新浪微博,一时兴起昨晚就写了一个Demo玩了一下,代码超简单,没优化,有兴趣的朋友可以自己改进。

原理很简单,先获得鼠标选中文字,然后调用新浪博客中提供的页面,把文字作为参数传过去就OK了。

代码如下:

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
    <style type="text/css">
        .tooltip
        {
            width:120px;
            height:23px;
            line-height:23px;
            background-color:#CCCCCC;
        }
        .tooltip a
        {
            color: #333333;
            display: block;
            font-size: 12px;
            font-weight: bold;
            text-indent: 10px;
        }
    </style>
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
    <script type="text/javascript">
        $(function () {
            $("#blogContent").mouseup(function (e) {
                var x = 10;
                var y = 10;
                var r = "";
                if (document.selection) {
                    r = document.selection.createRange().text;
                }
                else if (window.getSelection()) {
                    r = window.getSelection();
                }
                if (r!= "") {
                    var bowen = "发送到新浪微博";
                    var tooltip = "<div id='tooltip' class='tooltip'><a οnclick=ask('"+r+"')>" + bowen + "</a></div>";
                    $("body").append(tooltip);
                    $("#tooltip").css({
                        "top": (e.pageY + y) + "px",
                        "left": (e.pageX + x) + "px",
                        "position": "absolute"
                    }).show("fast");
                }
            }).mousedown(function () {
                $("#tooltip").remove();
            });
        })

function ask(r) {
            if (r != "") {
                window.open('http://v.t.sina.com.cn/share/share.php?searchPic=false&title='+r+'&url=http://www.cnblogs.com/durongjian&source=天行健,自强不息&sourceUrl=http%3A%2F%2Fblog.sina.com.cn&content=utf-8&appkey=1617465124', '_blank', 'height=515, width=598, toolbar=no, menubar=no, scrollbars=auto, resizable=yes, location=no, status=yes');
            }
        }
    </script>
</head>
<body>
    <div id="blogContent">
        2011年到了,在前几天的“2010岁末小记”中给自己定下了一个计划,其中有一条就是“每周至少写一篇技术博客。用博客的方式来督促自己学习和进步,记下学习的新知识和积累的知识点,构建自己的知识库。”。园子里高手很多,MVP就有好几位,看他们的文章真有“看君一博文,胜读四年书”之感。曾经对委托、事件云里雾里的我看了张子阳的“C#中的委托和事件”后终于明白了很多,园子里像这样的好文章还有很多,作为菜鸟我真的获益匪浅。

虽然自己现在水平很差,但高手都是从菜鸟成长起来的,因此我坚信只要努力学习,每天都有收获和进步,逐渐提高自己的编程水平,总有一天也能厚积薄发,写出一些比较好的博文与大家分享,帮助新手进步。作为新年第一篇博文,我打算写一个博客备份系统系列文章与园友们分享,晒晒自己的代码,非常欢迎大家提出意见和建议。
    </div>
</body>
</html>

就这么简单哦,大家可以自己试试哈。当然获得选中文本还可以有其他操作,这儿只是取巧调用了新浪的页面,大家如果有兴趣可以自己创建应用自己实现。

  贴几张图吧:

  

  

鼠标选中文字

  

弹出的页面

  

新浪微博中显示

超简单JS实现把鼠标选中文字发送到新浪微博相关推荐

  1. html 分享到新浪微博,JQuery用鼠标选文字来发新浪微博

    最近注意到新浪博客有个小功能,就是当鼠标选中一段文字时会浮现一个小图片,点击这个图片可以把选中内容发送到新浪微博,一时兴起昨晚就写了一个Demo玩了一下,代码超简单,没优化,有兴趣的朋友可以自己改进. ...

  2. js 获取页面鼠标选中的文字

    js获取页面鼠标选中的文字,最主要的代码 event.selection = window.getSelection(); 页面代码 <div><p class="cont ...

  3. css选中后的背景,css怎么实现鼠标选中文字后改变背景色

    css中可以使用"::selection"选择器来实现鼠标选中文字后改变背景色效果,只需给文字元素E添加"E::selection{background: 背景色值;}& ...

  4. 简单JS实现走马灯效果的文字(无需jQuery)

    效果类似:(抱歉,图片是静态的) 写一段html,需要走马灯上下跳动的内容,但每次只显示一行: <hr size="0" align="center" s ...

  5. 【HAVENT原创】JS 屏蔽/禁止双击选中文字

    为什么80%的码农都做不了架构师?>>>    源码如下: <div onselectstart="return false;" ><span& ...

  6. 一键复制 html,最简单js代码实现一键复制文字

    目前网页最常见的一键复制方式:ZeroClipboard,Clipboard.js,execCommand,setData,和只支持老旧IE的其它鸡肋方法.前两种是JS插件,不在此文讨论之列,今天我们 ...

  7. 在java中怎样做当鼠标选中文字单击鼠标右键出现菜单,定制鼠标右键“新建”菜单选项...

    当您在Windows桌面单击鼠标右键,选择"新建"来建立快捷方式或文件夹时,除了快捷方式与文件夹这2个选项之外,还有一个很长的文件菜单,包含了电脑中安装的一些应用软件,您可以很容易 ...

  8. 超简单的页面(图片、文字、布局。。。)等比缩放

    rem实现页面等比缩放 一.功能实现 二.实现原理 一.功能实现 第一步 <head><meta name="viewport" content="wi ...

  9. 超简单JS延迟5秒加载方法代码

    JS延迟5秒加载方法 setTimeout( function(){ //add your code }, 5 * 1000 ); //延迟5000毫米 5000等于5秒哦

最新文章

  1. 用Python不回头也能看美女,这招你会了吗?
  2. 回调函数function的test
  3. 雅诗兰黛天猫超级品牌日:未央唇膏、红装小棕瓶“当红不让”
  4. mysql generaton_Mysql 集成随机唯一id mysql unique number generation
  5. excel日期格式改不了_这一类型的Excel快捷键,为什么如此好用
  6. 2018-2019-1 20165325 《信息安全系统设计基础》第七周学习总结
  7. Linux文件系统:Linux 内核文件描述符表的演变
  8. Android-LayoutInflater
  9. 如何发挥Intel傲腾持久内存最大能力?
  10. 台式机主板上保护cpu的盖子安装和拆卸
  11. Tautology POJ - 3295
  12. C2_W1_Lab01_Neurons_and_Layers
  13. Basler驱动如何彩色相机白平衡说明
  14. Gradle For Android(三)Gradle优化与灵活的使用技巧
  15. Oracle 报 “ORA-00054 资源正忙, 但指定以 NOWAIT 方式获取资源, 或者超时失效” 问题的解决方法
  16. 测定Linux内核100ms的时钟滴答数
  17. iOS 开发问与答(142-159)
  18. DeepRMethylSite:一种基于深度学习的蛋白质精氨酸甲基化位点预测方法
  19. 7-12 h0004.双倍
  20. 人脸识别技术的概念与组成

热门文章

  1. 编辑器FreeTextBox升级至3.0
  2. SpringSecurity分布式整合之分布式认证流程说明
  3. 消息发送样例介绍和步骤分析
  4. 数据库-mysql基础操作之输入查询
  5. 解读Redis报错:“MISCONF Redis is configured to save RDB snapshots”
  6. 服务提供者与服务消费者
  7. 服务器集群后产生那些问题
  8. 图的定义存储和遍历(一级)
  9. JAVA生成随机字符串方法
  10. C语言snmp编程视频,在Ubuntu18.04中关于C语言使用netsnmp进行snmp编程