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

推荐订阅源

Hugging Face - Blog
Hugging Face - Blog
云风的 BLOG
云风的 BLOG
大猫的无限游戏
大猫的无限游戏
M
MIT News - Artificial intelligence
L
LangChain Blog
阮一峰的网络日志
阮一峰的网络日志
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Recent Announcements
Recent Announcements
IT之家
IT之家
Google DeepMind News
Google DeepMind News
罗磊的独立博客
爱范儿
爱范儿
Last Week in AI
Last Week in AI
人人都是产品经理
人人都是产品经理
U
Unit 42
MongoDB | Blog
MongoDB | Blog
S
SegmentFault 最新的问题
B
Blog
博客园 - 叶小钗
月光博客
月光博客
Stack Overflow Blog
Stack Overflow Blog
V
Visual Studio Blog
C
Check Point Blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知

博客园 - mecn

好久没来了。。。。。。。。。。 2007最全网页设计实用代码(史上最全) zt javascript 客户端验证上传文件是否合法 c# 汉语拼音排序函数 vs2005 ActiveX c# 注意几点! NHibernate 学习 (转园子里子两篇关于NHibernate的文章) 将后台数据读取到前台的EXCEL文件中去,用javascript实现,asp.net,javacript(发一个原创) 浅谈图形验证码的识别 用ajax打造和gmail一样的加载进度条显示!(原创) asp.net大页面载入时以进度条显示zt ajax中 同一页面中 UpdatePanel 区别 更新多个区域的关键 timer使用方法 在asp.net Sql server (可以是存储过程)中使用事务回滚 网页一屏到底有多大 1024*768 800*600 网页设计大小 网页设计尺寸 在vs2005中用push方式来用水晶报表,比pull方式好用多了! 去掉VS2005中水晶报表的登录界面(ZT) Visual Studio 2005 IDE 技巧和窍门 得到页面所有的form内对象数值——————为一个控件加一个客户端属性 从webservice读取string[]至downlist,增加onchange事件,更改相关显示。 动态生成表格内容,支持多个textbox,自动生成textboxID,比较好用
关于IE非安全更新带来flash和ActivX不能激活的解决办法(zt)
mecn · 2007-06-13 · via 博客园 - mecn

最近在作网页设计的时候,无意间发现IE浏览器打开含有Flash的页面的时候,总会有 个粗粗的框子,而且对于还有脚本的Flash不能自动播放,当鼠标移动上去的时候,会出来一行提示,“单击以激活控件”,刚开始我还很纳闷,以为是什么 IE自带的加载项禁用了Flash,结果查了半天,没有发现任何异常插件。于是上Google一搜,结果出来了,原因在于我的机器安装了微软的一个新的 IE非安全更新KB912945。
Microsoft 最初在 2006 年 2 月 28 日发布了安全通报MS06-013,讨论 Internet Explorer 的非安全更新 912945。应用此更新之后,只有当客户手动激活其用户界面时,他们才能够与某些网页中加载的 Microsoft ActiveX 控件进行交互。 他们可以通过单击用户界面或使用 Tab 键和 Enter 键来达到目的。受到这一改动影响的程序包括程序包括以下这些: Adobe Reader,Apple QuickTime Player,Macromedia Flash,Microsoft Windows Media Player,Real Networks RealPlayer,Sun Java Virtual Machine。Microsoft 更改 Internet Explorer 中 ActiveX 控件的原因居然是因为把Microsoft 牵涉在内的“Eolas Technologies 和 加利佛尼亚大学董事会与 Microsoft”专利侵权案(Eolas 与 Microsoft)有关,很荒唐的理由吧,哈哈。
目前对于普通用户而言最大的别扭就是每次看 含有script代码flash的时候都必须先按一下,flash才可以播放。如果你觉得这个更新搞的你看网页很别扭,鼠标移动上去会出现一个大大黑框 框,你可以点控制面版-添加删除程序-选中显示更新复选框,在windows XP软件更新-那一长串里面找到windows XP非安全更新- KB912945,点卸载,如果没有看到这个选项的化就比较麻烦了,你的机器可能装上了Internet Explorer 的累积性安全更新 KB912812,以前的KB912945也被包含到这个补丁里面了。这个补丁最好不要卸载。他包含了一些高危险IE漏洞的补丁集合。遇到这个补丁,只好 自认倒霉了,微软暂时还没有针对个人用户更好的解决方案。或者你换浏览器,比如FireFox就是一个比较好的选择。
对于网络开发者来说,当客户 系统使用IE并安装了这个补丁后,就会出现刚才说的情况,凡是一个页面内所有<object>、<embed> 或 <applet> 编码的活动内容都不会被自动激活,需要用户手动点击,微软官方给出目前的解决方法用外部调用JS代码的document.write方法,把< object>、<embed> 或 <applet> 编码的活动内容写入你的页面中,才可以自动激活,注意一定要是外部调用JS代码,在把JS代码和页面写在同一个文件中调用是不可以自动激活的。
例如你现在有一段object代码如下
<object classid="clsid:xxxxxxxxxxx..." ...>
    <param name="xxxx" value="xxx.swf">
</object>
先在站点创建一个.JS 文件,假设为 temp.js 文件。编写以下代码
function temp()
{
    document.write('<object classid=" xxxxxxxxxxx..." ...>\n');
    document.write('<param name="xxxx" value="xxx.swf" />\n');
    document.write('</object>\n');
}
在你的网页的<head>标记体里面插入
<script src="temp.js" type="text/javascript"></script>
然后替换你原来网页的那段<object>标签
还有一种方法是利用JS代码的document.createElement方法,例如
//createElementExplicit.js
var myObject = document.createElement('object');
DivID.appendChild(myObject);
myObject.width = "200";
myObject.height = "100";
myObject.classid= "clsid:6BF52A52-394A-11d3-B153-00C04F79FAA6";
myObject.URL = "example.wmv";
myObject.uiMode = "none" ;
然后直接在页面里面引用这个函数
<html>
  <body>
    <div id="DivID">
      <script src="createElementExplicit.js"></script>
  </body>
</html>
如果你页面的活动内容很多,要一个JS一个JS的写,非常麻烦,你可以写一个带参数的JS函数,然后在适当的位置调用JS代码,例如下面的例子
// external_script.js
function CreateControl(DivID, CLSID, ObjectID,
                       WIDTH, HEIGHT, URL, AUTOSTART)
{
  var d = document.getElementById(DivID);
  d.innerHTML =
    '<object classid=' + CLSID + ' id=' + ObjectID +
    ' width=' + WIDTH + ' height=' + HEIGHT +'>
    <param name="URL" value=' + URL + '>
    <param name="autoStart" value=' + AUTOSTART + '/>';
}
HTML里面如下
<html>
<head>
   <script src="external_script.js" language="JScript"></script>
</head>
<body>
   <script language="JScript">
     CreateControl( "EXAMPLE_DIV_ID",
                    "clsid:6BF52A52-394A-11d3-B153-00C04F79FAA6",
                    "EXAMPLE_OBJECT_ID", "600", "400", "example.wmv",
                    "-1")
   </script>
</body>
</html>
不 过切记,上述三种方法都依赖 JavaScript。就是说如果客户机IE中, 禁用了 JavaScript。上述建议的方法对这些用户就不起作用, 他们还是要手动点击以激活控件。我个人觉得微软IE这次更新很失败,给广大开发者带来了很大麻烦,希望微软能够尽快给出一个更好的解决方案。