js实现网页和控件的简单交互

本文介绍了一个使用ActiveX控件实现在点击网页链接时调用脚本,并修改网页内容的方法。通过JavaScript与ActiveX控件交互,能够根据不同的链接返回定制化的HTML内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本功能不仅实现网页和控件的简单交互,还实现了点击网页网页内容被修改。

1. 通过点击网页中的网页链接,调用脚本;

2. 脚本调用控件里的函数,控件里的函数把结果返回;

activeXtest.html

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>ActiveX</title>
<script language = 'javascript'>
        function GetUrl4(id)
        {
           var items=document.getElementById(id);   
        var strResult = MyActiveX.changeContent(items.href);
  
        var oNewDoc = document.open("text/html", "replace");
       oNewDoc.write(strResult);                  
       oNewDoc.close();                   
        }                      
</script>
</head>
<body>  
<object id="MyActiveX" classid="clsid:319388B4-E66E-4646-B265-29312E86EC9A"> </object>
<fieldset>
<legend>MyActiveX</legend>
    <table width="100%" border="1">
      <tr>
        <td width="20%"><a id="baidu" href="http://www.baidu.com" onclick='GetUrl4(this.id);return false;'>百度2http://www.baidu.com</a> </td>
      </tr>      
      <tr>
        <td width="20%"><a id="soho" href="http://www.sohochina.com" onclick='GetUrl4(this.id);return false;'>搜狐http://www.sohochina.com</a> </td>
      </tr>
      <tr>
        <td width="20%"><a id="example" href="http://example.com" onclick='GetUrl4(this.id);return false;'>http://example.com</a> </td>
      </tr>
    </table>
</fieldset>
</body>
</html>

MyActiveXCtrl.cpp的片段代码

BSTR CMyActiveXCtrl::changeContent(BSTR url)
{
 AFX_MANAGE_STATE(AfxGetStaticModuleState());

 CString strResult;
 strResult = COLE2T(url);
 // TODO: Add your dispatch handler code here
 //char* lpszText2 = _com_util::ConvertBSTRToString(url);
 // TODO:这里可以修改网页的代码。。。
 if (strResult == "http://www.baidu.com/")
 {
  strResult = "<html>\
  <head>\
  <script type=\"text/javascript\">\
  </script>\
  </head>\
  <body>\
  百度</body>\
  </html>";
 }
 else if (strResult == "http://www.sohochina.com/")
 {
  strResult = "<html>\
     <head>\
     <script type=\"text/javascript\">\
     </script>\
     </head>\
     <body>\
     搜狐</body>\
     </html>";
 }
 else
 {
  strResult = "<html>\
     <head>\
     <script type=\"text/javascript\">\
     </script>\
     </head>\
     <body>\
     未知网页</body>\
     </html>";
 }
 return strResult.AllocSysString();
}

代码下载网址:http://download.youkuaiyun.com/detail/liuyan20092009/9585883

 

1.功能 摄像头控件用于在Web编程中辅助您完成图像采集、截图,并上传到服务器当中,支持USB外置摄像头、内置摄像头及部分型号高拍仪设备. 该摄像头控件工作在客户端浏览器中,支持多种服务器端编程技术及部署环境,支持asp、jsp、php、asp.net等常见的服务器端编程技术,图像采集结果支持jpgbmp格式图片。 2.控件集成jsp,asp,html,php使用说明 控件以cab压缩包格式发行,在项目中集成控件时需要复制cab文件到项目中,然后在需要进行图像采集的页面中使用<object></object>的方式引入该控件。完整的引用控件的示例如下: 1 <object classid="clsid:1122dfdf-5fds6-4fds-8fds2-947fdsfdsfds8" 2 3 id="Camer" codebase="http://127.0.0.1:8080/imagesUpload/demo.cab#version=1,0,0,8" width="500px" height="400px"> 4 5 </object> 上面的示例演示了如何在项目的页面中引用控件,注意红色标示的部分用于确定控件cab压缩包所在路径,要结合项目中的目录划分自行制定到控件压缩包的路径。 除了要在html页面中引入控件以外,客户端浏览器在访问控件所在页面时,需要提前调整浏览器设定,需要启用 ActiveX技术,因控件未进行数字签名,因此需要启用浏览器的“未签名 ActiveX下载提示”功能及“未签名ActiveX运行提示”功能. 注意:首次运行时,当浏览器有阻止运行,请允许运行 3.控件方法调用说明 01 //启动摄像头 02 Camer.initCamer(0,10); 03 //点击拍照 04 Camer.TakePhoto("D:/test1.bmp"); 05 //关闭摄像头 06 Camer.CloseDev(); 07 //上传已拍照的相片 08 Camer.UpFileNew("D:/test1.bmp","http://127.0.0.1:8080/imagesUpload/upload.jsp"); 09 10 //删除本地照片 11 Camer.DeleteFile("D:/test1.bmp");
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值