Onelong

分享知识,与你一起进步......
RSS icon Home icon
  • html页面划词翻译api

    post by onelong / 2009-12-30 3:25 Wednesday [javascript]

    最近看到到一个很有意思的功能!里面有一个划词翻译的功能!
    突然觉得那个功能很人性化!百度google一下,哈哈,还真的又发现.......
    下面的是google的划词翻译:
    如何在您的网站上增加划词翻译功能:
    任何网站只要将以下代码放入您的网页就可以为您的站点添加划词翻译的功能
    <script src="http://www.godict.com/script/huaci.js" type="text/javascript"></script>
    <script type="text/javascript">
    dictInit();
    </script>

    用户取词状态开关:
    如果您希望在网页上显示一个用户取词状态开关,则在适当位置放入以下代码(放置在划词翻译代码之前):
    <span id="dict_status"></span>
    效果如下:
    [划词翻译已开启]
    * 如果要默认取词为关闭,只有在点击开启后才打开,可在
    dictInit();
    之前增加代码:
    dict_enable=false;

    这里还有更强大的:dict.cn的划词翻译
    任何网站只要将以下代码放入您的网页就可以为您的站点添加划词翻译的功能
    <script src="http://dict.cn/hc/" type="text/javascript"></script>
    <script type="text/javascript">
    dictInit();
    </script>

    用户取词状态开关:
    如果您希望在网页上显示一个用户取词状态开关,则在适当位置放入以下代码(放置在划词翻译代码之前):
    <span id="dict_status"></span>
    效果如下:
    [划词翻译已禁用]
    * 如果要默认取词为关闭,只有在点击开启后才打开,可在dictInit();之前增加代码:dict_enable=false;
    dict.cn还提供了查词的api
    更多请留意:http://dict.cn/tools.html

  • javascript获得选中信息

    post by onelong / 2009-12-18 20:57 Friday [javascript]

    最近浏览别人的博客时,看到别人的划词搜索很可爱!突然灵机一动,我想他是怎样获取我们的选中的文字呢?这样的javascript交互真的很人性化!
    当然获取页面选中的内容在html编辑器也是很常用的!如要修改某些字体,就可以先选中然后修改!
    首先说一说怎样获取页面的内容吧!
    IE浏览器是这样获取的:document.selection.createRange().text;
    这句可以获取包括文本域的内容!为什么要说明这一点呢?在firefox下获取文本域中选中文字的方法是不同的
    firefox下是这样获取选中的内容呢?
    window.getSelection().toString();或者用document.getSelection();结果都是一样的
    下面看一段兼容的代码吧!
    function getSelectedText() {
    if (window.getSelection) {//firefox
    return window.getSelection().toString();
    }
    else if (document.getSelection) {//firefox
    return document.getSelection();
    }
    else if (document.selection) {//IE
    return document.selection.createRange().text;
    }
    }
    这样就可以获取网页中选中的内容拉!
    下面看看firefox怎样获取文本域中选中的内容吧!
    function getTextFieldSelection(e) {
    if (e.selectionStart != undefined && e.selectionEnd != undefined) {
    var start = e.selectionStart;
    var end = e.selectionEnd;
    return e.value.substring(start, end);}
    else return ""; //不支持的浏览器返回空!!}