惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

月光博客
月光博客
Microsoft Security Blog
Microsoft Security Blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
博客园 - 叶小钗
博客园 - 三生石上(FineUI控件)
爱范儿
爱范儿
T
Tailwind CSS Blog
F
Fortinet All Blogs
Blog — PlanetScale
Blog — PlanetScale
WordPress大学
WordPress大学
H
Help Net Security
Apple Machine Learning Research
Apple Machine Learning Research
Y
Y Combinator Blog
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
GbyAI
GbyAI
Martin Fowler
Martin Fowler
有赞技术团队
有赞技术团队
腾讯CDC
V
V2EX
Jina AI
Jina AI
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
B
Blog
M
MIT News - Artificial intelligence
宝玉的分享
宝玉的分享

博客园 - Render

数据绑定表达与javascript字符串连用 - Render - 博客园 手工删除打印任务 burrow在某些项目使用中报"控件包含代码块(即 <% ... %>),因此无法修改控件集合" - Render httpModules remove does not work in a folder or virtual directory Javascript中文字符串处理额外注意事项 - Render - 博客园 Arc Catalog重建索引时报错:ORA-02298: 无法验证 (SDE.A18_FK1) - 未找到父项关键字 (A18_FK1) 指定web.config让httphandler处理某目录及子目录下所有文件 - Render - 博客园 windows命令行里取得年-月-日-时-分-秒的办法 - Render - 博客园 网站复杂信息自动录入处理 css中url的路径含义 ORACLE Transparent Gateway透明网关安装配置小问题 使用OLEDB访问ACCESS的几点经验 ARCIMS Serverlet Connector查询属性,当属性为中文时乱码处理 - Render [转载]ARCIMS 9.2 [ERR0134]错误解决方法 ORACLE 大数据表Update处理 PL/SQL developer的HomeEnd问题(转载) ArcSDE9.0对Oracle初始化参数的要求 在SDE中创建dataset时"Fail to Create, Cann't found spatial referrence entry"错 处理Oralce中非法的日期值
事件触发型ActiveX放置在网页中的部分思考
Render · 2009-11-18 · via 博客园 - Render

最近一B/S项目中频繁用到指纹扫描登记及比对功能。指纹相关功能早已成熟,相关硬件厂家也把扫描、比对等功能做成了ActiveX控件,要置入B/S系统中,也只要使用其提供的ActiveX控件就可以了。

我使用的是中控URU4000B,其提供了一ActiveX控件,biokey.ocx。这个控件有个特点,其功能实现是事件触发型的,如:在指纹登记时,先调用一个函数进入登记状态,之后如果有合格指纹按压动作,就会触发一个事件,告之指纹登记已经完成。且如果在一个窗口内有多个控件,只有其中一个控件实例会收到这个事件。

但实际的功能要求在一个页面内有多个人的指纹登记及比对,比如登记了产权人的还要登记共有人的。有些功能界面情况还是有Iframe,在Iframe里有指纹登记的,在Iframe容器外也要指纹登记。如果直接在页面内放置多个Object对象,或在每个页面里都放置一个Object对象,则按压指纹触发的事件完全不知道会反应到哪个页面的哪个控件上。因此实现上要求只能整个窗口内只有一个Object,这样可以确保当前事件都反馈到确定的控件及处理脚本上。

可以采取的思路是,使用一段javascript脚本向页面内注册Object元素及事件处理脚本,这段脚本中找到最上层的window对象,然后在这个window对象的Document里加入Object元素及事件处理脚本。各页面在调用功能的时候,相应地把自己所在的window对象及控件ID赋值给顶层window的变量中(如window.targetWin),方便在事件处理中通过顶层window.targetWin来访问实际调用功能的控件。