为什么看到好多网站的上传文件按钮都是flash做的?

无·法 2018-09-21 07:31:16


如上面网易邮箱的代码:

<div class="nui-mainBtn nui-btn nui-btn-hasIcon nui-mainBtn-hasIcn pFile-uploadBtn" data-cmd="upload">
<span class="nui-btn-icon"><b class="js-component-icon nui-ico pFile-ico pFile-ico-arrUp">p</b></span>
<span class="nui-btn-text">上传文件</span>
<span class="pFile-uploadBtn-moniter" style="z-index: 999;"><embed id="uploaderFlashFile" src="//mail.163.com/js6/h/FileSplitUploader.swf" flashvars="apiMulti=1&apiDiff=200&apiListener=window.UploaderCall.f1537528331743" quality="high" wmode="transparent" allowscriptaccess="always" type="application/x-shockwave-flash" width="100%" height="100%" /></span>
</div>


再比如:
http://tool.oschina.net/codeformat/html
这里面的“复制代码”那儿的按钮,我Firefox一打开这个页面这按钮是黑色的,要点击下才能激活flash,然后才是正常的蓝色按钮。

看起来貌似用flash方式能获取更多的权限。网上找了下,相关的介绍很少,有谁了解的可以普及下么。
...全文
840 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
无·法 2018-10-02
  • 打赏
  • 举报
回复
引用 3 楼 Win32FanEx 的回复:
好像是flash增强安全性导致,就是启动上传功能的指令必需来自flash控件自身而不可以是外界元素。这就是为什么上传按钮也必需用flash来做的原因。要知道用div来做一个漂亮按钮是很容易的---就是为了安全性。

应该就是你说的为了安全性。其次应该还有获得更多权限的效果。

我用js调用flash那儿的元素的click方法都没有效果,只能用户点击才有反应,这样明显比较安全,浏览器能区分是用户操作还是脚本操作。

包括下面这个链接里的复制也是:
http://tool.oschina.net/codeformat/html


这是在Firefox中操作的,复制按钮一点击就可以了,而h5能做的只是提示用户去手动执行Ctrl+C,这样就能区分是用户真实操作了。
无·法 2018-10-02
  • 打赏
  • 举报
回复
引用 2 楼 hookee 的回复:
主要是方便分块续传大文件,获取上传进度等。
传统的上传也能控制进度,大文件就不清楚了
无·法 2018-10-02
  • 打赏
  • 举报
回复
引用 4 楼 net_lover 的回复:
主要是为了兼容旧的浏览器,现在html5上传很简单方便了。

另外,Flash技术即将被淘汰了,Adobe 表示 将于 2020 年 12 月彻底结束 Flash 的更新与下载,
旧浏览器不支持 input type="file" 吗?
孟子E章 2018-10-01
  • 打赏
  • 举报
回复
主要是为了兼容旧的浏览器,现在html5上传很简单方便了。

另外,Flash技术即将被淘汰了,Adobe 表示 将于 2020 年 12 月彻底结束 Flash 的更新与下载,

大狗狗 2018-10-01
  • 打赏
  • 举报
回复
好像是flash增强安全性导致,就是启动上传功能的指令必需来自flash控件自身而不可以是外界元素。这就是为什么上传按钮也必需用flash来做的原因。要知道用div来做一个漂亮按钮是很容易的---就是为了安全性。
hookee 2018-09-23
  • 打赏
  • 举报
回复
主要是方便分块续传大文件,获取上传进度等。
winzond 2018-09-22
  • 打赏
  • 举报
回复
听说H5要取代WEB中大部分flash的功能哟

61,112

社区成员

发帖
与我相关
我的任务
社区描述
层叠样式表(英文全称:Cascading Style Sheets)是一种用来表现HTML(标准通用标记语言的一个应用)或XML(标准通用标记语言的一个子集)等文件样式的计算机语言。
社区管理员
  • HTML(CSS)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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