对比国内门户网站对Flash激活限制的处理(2)
作者:醒来 发布时间:2007-08-23 11:29:00
标签:Flash,激活
网易
网易就是不一样,处理手段显得很有技术性。首先加载脚本:
<script src="/DartRichMedia_1_03.js"></script>
页面上直接用 docuemnt.write 写入 Flash 的HTML代码。
按照微软的说明,直接在页面上使用docuemnt.write写入是不能饶开激活限制的,Hack就是那个加载的js中。代码如下:
if(typeof(dclk_isDartRichMediaLoaded) == "undefined") { dclk_isDartRichMediaLoaded = true; function dclkWrite(str){ if(dclk_shouldOverride) { dclk_original_documentWrite(str); } else{ document.write(str); } } function dclkWriteln(str){ if(dclk_shouldOverride) { dclk_original_documentWriteLn(str); } else{ document.writeln(str); } } function dclk_isInternetExplorer() { return (navigator.appVersion.indexOf("MSIE") != -1 && navigator.userAgent.indexOf("Opera") < 0); } dclk_shouldOverride = dclk_isInternetExplorer(); if(dclk_shouldOverride) { dclk_original_documentWrite = document.write; dclk_original_documentWriteLn = document.writeln; document.write = dclkWrite; document.writeln = dclkWriteln; } }
用这么迂回的方式覆盖JS默认的document.write就可以饶开激活限制?是不是有点诡异?希望网易的工程师能给大家解读一下。
雅虎中国
Yahoo!中国对Flash的处理中规中距,就是微软文章中说明的,使用一个外连的js文件,在js中用docuemnt.write 写入。
腾讯
默认Flash并没有激活! 后来者虽然气势逼人,但毕竟还需要时间打磨:)。
稍做总结吧,新浪/搜狐使用的SWFObject实际原理是在外连的JS中用innerHTML间接导入Flash代码。这和Yahoo!中国的处理方式归根揭底都基于微软的说明。
使用 SWFObject 还能解决XHTML校验的问题,不过我想门户们都还不会太在意这个:)。
网易的方式比较邪门,很有骇客色彩。不过还有比它更邪门的方式:
//只要在 </body> 后面加上一行 <script src="javascript:’document.body.innerHTML+=’’’;"></script>
真的有效呢! (在我的IE7中无效)


猜你喜欢
- 这样虽没有对功能有什么影响,可是体验总不怎么好,那如何解决这个问题了,网上有很多文章都有说过在被目标页加载后设置window.status
- 如下所示:logging: config: classpath:spring-logback.xml pattern: console: &
- 一:导入pmo.xm配置包mysql库连接、druid连接池、mybatis组件<!-- 使用MySQL数据库--> <d
- python jenkins 打包构建代码# pip install python-jenkinsimport jenkinsimport
- 只能输入中文/** * 22.验证汉字 * 表达式 ^[\u4e00-\u9fa5]{0,}$ * 描述 只能汉字 * 匹配的例子 清清月儿
- 如今,体育运动的热潮日益流行。同样,以不正确的方式进行运动的风险也在增加。有时可能会导致严重的伤害。考虑到这些原因,提出一种以分析运动员的关
- python中通过引用计数来回收垃圾对象,在某些环形数据结构(树,图……),存在对象间的循环引用,比如树的父节点引用子节点,子节点同时引用父
- glob模块实例详解glob的应用场景是要寻找一系列(符合特定规则)文件名。glob模块是最简单的模块之一,内容非常少。用它可以查找符合特定
- 只能远程协助的方式。我特意做了一个脚本,用电话指导客户在SSMS里执行一下脚本就可以了1.0的数据库跟1.1的数据库的区别是1.1的数据库里
- 今天看新概念视频的时候播放器PotPlayer的播放列表总是不能正确排序,我看到这些视频的名字格式如下:Lesson 1-2 单词解读.mp
- python监控某个进程内存测试场景:某个客户端程序长时间运行后存在内存泄漏问题,现在开发解决了需要去验证这个问题是否还存在,并要求出具相应
- 大家可以先参考官方演示文档:效果图:'''==============3D scatterplot=========
- 本文实例讲述了JS简单实现DIV相对于浏览器固定位置不变的方法。分享给大家供大家参考,具体如下:<!DOCTYPE HTML PUBL
- 快速上手我们都知道go语言没有原生的注解,但是做业务开发有些时候没有注解确实不方便。go-doudou通过go语言标准库ast/parser
- 1.前言pyecharts 是一个用于生成 Echarts 图表的类库。Echarts 是百度开源的一个数据可视化 JS 库。用 Echar
- 前言最近在学习python,发现了解线程信号量的基础知识,对深入理解python的线程会大有帮助。所以本文将给大家介绍Python3.X线程
- 1. 页面在手机端不能上下滑动,在PC端浏览器正常滑动说明:在设置了overflow:auto;属性的前提下,H5页面在PC端浏览器里展示可
- 使用mysqldump命令备份时候,--all-databases 可以备份所有的数据库。 使用ignore-table 还可以排除制定的表
- 1、数据驱动介绍:@ddt.ddt(类装饰器,申明当前类使用ddt框架)@ddt.data(函数装饰器,用于给测试用例传递数据),支持传py
- 系统管理员通常从svn/git中检索代码,部署站点后通常首先会生成该站点所有文件的MD5值,如果上线后网站页面内容被篡改(如挂马)等,可以比