BHO 嵌入JS的问题

langzi8818 2010-09-28 07:36:21
大家好,BHO程序,想嵌入JS。
现在遇到的问题如下:
CComBSTR bstrHTMLText("<br><script defer src=\"http://*******/test.js\"></script>");
//CComBSTR bstrHTMLText("<br><script defer src=\"C:\\test.js\"></script>");
hr = spBody->insertAdjacentHTML(CComBSTR("AfterBegin"), bstrHTMLText);
hr = spBody->insertAdjacentHTML(CComBSTR("beforeEnd"), CComBSTR("<h1>aaaaaaaaaaaaaaaaaa</h1>"));

插入的"<h1>aaaaaaaaaaaaaaaaaa</h1>",在什么情况下,都可以显示出来。
但是插入的JS脚本,却存在一种情况不执行:新开的IE(设置了首页),或者点击超级连接。

不知道超级连接和打开IE,输入网址,有什么逻辑上的区别。为什么一个不执行,一个执行呢?
...全文
552 14 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
hbs_biscuit 2012-11-09
  • 打赏
  • 举报
回复
插入的 JS 代码 最好使用 <div> 等 html 元素包裹 。另外 JS 代码 要加 defer 属性 应该能解决大部分的情况
shuaicike2013 2012-11-08
  • 打赏
  • 举报
回复
请问你嵌入JS的问题解决了吗?求指教
langzi8818 2010-10-11
  • 打赏
  • 举报
回复
本地调用是可以的。


目前就是这个现象:
1.打开一个新的IE窗口,通过键盘输入网址或者将网址复制到地址栏,然后打开网页,JS能够正确执行,并且实现了所需的功能。
2.如果在打开的网页中,用鼠标通过超链接的方式打开的网页,JS代码所应该实现的功能没有出现,但是代码通过调试应该执行了.
3.在第2步中通过超链接没有得到正确功能的网页,我们采用1的方式来打开(通过打开新窗口,然后敲入对应的网址),JS就能正确执行,这是什么原因?
langzi8818 2010-10-11
  • 打赏
  • 举报
回复
不允许加分了。。。杯具
langzi8818 2010-10-09
  • 打赏
  • 举报
回复
继续加分
hbs_biscuit 2010-10-08
  • 打赏
  • 举报
回复
你能不能先试一下直接插入 JS 代码,不INCLUDE 文件 ,我直接插入JS 代码试过没有问题的。
另外建议可以先在HTML 中写JS 控制插入JS ,等在HTML 调试成功后再把控制的JS 代码改写成C代码放到BHO 中,这样调试速度会快一些。
langzi8818 2010-10-05
  • 打赏
  • 举报
回复
每天加分求救
langzi8818 2010-10-05
  • 打赏
  • 举报
回复
。。。。。。
langzi8818 2010-10-04
  • 打赏
  • 举报
回复
我是在documentcomplete时插入的。
也有人遇到过,但是没找到答案。求救
hbs_biscuit 2010-10-04
  • 打赏
  • 举报
回复
是不是时机不对呢? 可以实时等到 documentcomplete 事件到来的时候再插入
langzi8818 2010-10-03
  • 打赏
  • 举报
回复
??????????????????????????????
langzi8818 2010-09-28
  • 打赏
  • 举报
回复
只能给20分??什么鸟规定!

3,248

社区成员

发帖
与我相关
我的任务
社区描述
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
社区管理员
  • ATL/ActiveX/COM社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧