zoukankan      html  css  js  c++  java
  • 关于文摘插件提交表单的开发

    1,要实现的功能就是在浏览器加一个右键快捷方式提交所选的网页或图片内容!实例应用在博客程序里,就是在你已登陆的情况下,浏览网页时看到比较好的新闻或图片!你就可以选中内容--》点右键出现“加入我的网摘”,这时就会弹出一个IE窗口,自动将网页标题加入表单的对应标题内容,及选中内容加入相应内容项,还有引用网址等!

    2,现在 我们来看一下这个功能如何实现的!

       首先我们用文本编辑器写入:
    Windows Registry Editor Version 5.00

    [HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\MenuExt]

    [HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\MenuExt\将此页加到我的网摘]
    @="http://域名/add.aspx"

    。另存为.REG文件,即写入注册表项添加右键菜单

    http://域名/add.aspx为处理页

    <html>
    <head>
    <meta HTTP-EQUIV="content-type" CONTENT="text/html; charset=utf-8">
    <title></title>
    </head>
    <body lang="zh-CN">
    <form id=form1 action="User_Post_Blog2.asp" method="post">
    <P>
    <input type="hidden" name="title" id=title1>
    <input type="hidden" name="url" id=url1>
    <input type="hidden" name="js" id=js1>
    <TEXTAREA id=content1 style="DISPLAY: none" name="content"></TEXTAREA> </P>
    </form>
    </body>
    </html>

    <script language="Javascript">

      
    var oWin = external.menuArguments;
      
    var oDoc = oWin.document;
      
    var titlestr;
      
    var start, end;
      
    var getzy;
      start 
    = end = -1;
      titlestr 
    = oWin.document.selection.createRange().text;
      
    forvar i = 0; i < titlestr.length; i++ )
      {
       
    if( start == -1 )
        
    if( titlestr.charAt( i ) == '\n' || titlestr.charAt( i ) == '\r' )
         
    continue;
        
    else
         start 
    = i;
       
    else if( titlestr.charAt( i ) == '\n' || titlestr.charAt( i ) == '\r' )
       {
        end 
    = i;
        
    break;
       }
       
      }
     
      
    if( start != -1 && end != -1 && start < end )
       form1.title1.value 
    = oDoc.title;
      
    else
       form1.title1.value 
    = oDoc.title;
      

      
    forvar i = 0; i < oDoc.images.length; i++ )
      {
       oDoc.images( i ).src 
    = oDoc.images( i ).src;
      }

      
    forvar i = 0; i < oDoc.links.length; i++ )
      {
       oDoc.links( i ).href 
    = oDoc.links( i ).href;
      }

      form1.url1.value 
    =  oDoc.URL ;
      getzy 
    = oDoc.selection.createRange().text;
      form1.js1.value 
    =  getzy.substr(0250)+"" ;
      form1.content1.innerText 
    = oWin.document.selection.createRange().htmlText; 
     
      form1.submit();
    </script>

     相信很多人都看懂了,上面是一个普通的表单,下面是一个script,关键还在下面
    oDoc.title 

    网页标题
    oDoc.URL网页地址
      getzy = oDoc.selection.createRange().text;   '以文本方式取得所选 的内容
      form1.js1.value =  getzy.substr(0, 250)+"..." ;   '取得前250个字符,之…结束,作为简介
     form1.content1.innerText = oWin.document.selection.createRange().htmlText;  HTML方式取得所选内容
     form1.submit();   自动提交表单到FORM里的ACTION即:User_Post_Blog2.asp
    到这里已经做到了信息的获取!之后就是普通的ASP表单处理了!
    像标题的VALUE就用value=<%=request("title")%>
    其它的照样子搬就是了!

    转自网上,地址已不详。

  • 相关阅读:
    canvas,制作炫酷的时钟和倒计时
    【bzoj2142】【礼物】拓展Lucas定理+孙子定理
    【hdu3652】数位dp(浅尝ACM-A)
    【bzoj4152】【The Captain】最短路(堆优化)(浅尝ACM-B)
    【bzoj2190】【仪仗队】欧拉函数+线性筛(浅尝ACM-J)
    【bzoj1087】【互不侵犯King】状压dp裸题(浅尝ACM-D)
    【bzoj1566】【管道取珠】竟然是dp题(浅尝ACM-E)
    【bzoj2957】【楼房重建】另类的线段树(浅尝ACM-H)
    【codevs1907】【方格取数3】二分图最大带权独立集
    二分图变种之最小路径覆盖、最小点覆盖集【poj3041】【poj2060】
  • 原文地址:https://www.cnblogs.com/heimirror/p/1524352.html
Copyright © 2011-2022 走看看