基于Flash的网站有什么坏处?
我觉得基于Flash的网站(或者基于Silverlight的网站)通常都会被忽视,除非你正在制作游戏或者多媒体内容丰富的应用程序。 为什么这样呢?
Flash因其糟糕的可访问性而臭名昭着。
键盘导航通常不起作用,而Flash(直到最近)还没有search引擎的支持。
Flash应用程序在手机和其他便携式设备上不起作用。
Flash不在iPhone中!
Flash是由一家公司(Adobe)控制的,因此它没有遵循任何明确的互联网标准。
互联网的美妙之处在于,您可以随时查看您所在的任何网站的源代码。这样您就可以在您的网站中使用相同的编程/devise技术,或者您可以在networking应用程序中find安全缺陷。 这在Flash中是不可能的。 在Flash中,源代码已closures。
最大的问题是,为什么你应该使用Flash“除了当你正在创造游戏或多媒体内容丰富的应用程序”?
jtyost2说:“我还补充说,你不能直接链接到Flash网站的任何内容,从而打破了互联网,互联网,链接的主要因素之一。”
- 内容重量
- 可用性
- search引擎机器人的可爬行性
- 无障碍
- 易用性(有争议的)
- 技术负担(访问网站所需的附加软件)
- 安全问题(需要添加软件的问题与安装或运行内容的软件/播放器有关)
[编辑]为什么我把可用性和易用性分开,最好在这个链接中解释
可用性:
- 结果 – 可用的软件;
- 一个过程,也被称为用户为中心的devise,创造可用的软件;
- 用于实现这一结果的一套技术,如情境观察和可用性testing; 要么
- devise哲学来满足用户需求?
使用方便:
- 有效
- 高效
- 引人入胜
- 容错
- 简单易学
我同意在该网站的意见,但这是所有的争议…可能是一个很好的stackoverflow问题:可用性和易用性一样吗? IMO的可用性部分是易用性,反之亦然,但它们不一定相同。
我希望我不会用这个编辑来增强语义上的敏感性:-)
有趣的是,这里的每个人都在鼓吹Flash / Silverlight,你会很好地认识到这只是硬币的一个方面。
Flash(和Flex )使网站devise人员能够为他们的网站提供更多的灵活性和更丰富的内容,并且适用于各种场合,例如与电影,乐队,儿童网站,游戏网站等有关的网站。
当然,没有selectFlash / Flex / Silverlight的原因有很多,但是现在JavaScript可以像JavaScript一样无法访问网站。 我以前曾经使用过盲人或networking爬虫没有合理可用性的JavaScript产品。
Flash的渗透率(从偏见的来源可以肯定)是99%+( http://www.adobe.com/products/player_census/flashplayer/version_penetration.html ),这意味着那些说“永远不会访问Flash站点“在没有安装Flash的人群中有1%,不要在线观看YouTube或电影预告片。
所以,你需要注意你的观众。 一定的观众和情况肯定会更好,纯HTML页面和最低限度的JavaScript(政府网站,编程网站是两个领域的想法)。 其他时候,这是因为观众是办公室工作人员,不允许在浏览器中安装Flash。
富互联网应用程序(RIA)是Flex / Silverlight与JavaScript / CSS / HTML之间存在明显冲突的地方。 我已经与这两个人合作过了,现在我认为需要Flex / Silverlight插件是相当合理的,尽pipe如果应用程序是公开的,仍然可能会丢失一些访问者。
总而言之,您最好确定自己的受众群体,确定他们愿意/能够使用的内容,然后根据这些限制决定您的技术。
基于Flash和Silverlight的网站通常使用封闭的模型违背基本的互联网惯例。
例如,大多数基于Flash和Silverlight的网站:
- 忽略后/ fwdbutton。
- 不要让任何人将url发送到网站上的特定地点,或者通过浏览器为以后的特定地点添加书签
- 把互联网放在一个固定大小的盒子里。 没有dynamic调整大的显示器或更高的分辨率。
“我正要点击结帐,但我想改变一些东西,所以我点击后退button”
在接下来的rant s / Flash / Flash或Silverlight / g中
- Flash应用程序/插件是一个严重的未公开的安全漏洞的封闭来源,暴露私人数据,允许修改硬盘上的任意文件等。
- Flash文件对于基本内容来说是巨大的。 有更有效的做事方式
- Flash很慢。 我的Windows PC上的插件可以占用100%的CPU时间来玩一些低劣的网站。
- Flash是非标准的。 到处都没有安装支持的Flash插件。 Linux用户无法通过包pipe理环节来运行它。 在Windows上的Firefox用户默认情况下不会得到它(很好,没有最后我检查)。
- Flash很烦人; 您的用户不希望被animation,垃圾和垃圾轰炸,只是为了获得一些基本的信息。
- 没有后退/前进function,除非Flashdevise者想实现它们
- 如果不等待构成“页面”的所有内容/脚本的加载,就无法查看单个页面。 如果你所有的用户想要的只是一段文字,而你却迫使多媒体淹没在喉咙里,那真是非常痛苦。
- 大多数Flash只有网站是非常糟糕的; devise师似乎更关心使用闪存引擎的所有function,而不是向用户展示简洁而有用的内容。
我是一名Flash开发人员。 我工作的公司并不难find希望我们为他们build立基于Flash的产品的客户。 有一些应用程序在Flash中比在我使用的其他环境下更容易开发。
但闪存有其问题。 上面的一些人抱怨说,Flash应用程序不包括键盘支持。 其他人则认为这是因为开发人员懒得实施它。 事实是,许多标准的Flash组件是越野车。 在我的公司,我们不得不写我们自己的替代品。 一个有问题的function是键盘支持。 我实现了自己的键盘交互支持。 它运作良好,但需要努力。 如果我正在编写一个Windows VB应用程序,将提供键盘导航,并将开箱即用。
对于深度链接,后退button支持等也是如此。聪明的开发者将能够使Flash应用程序performance良好。 一些开源库在这里是不可或缺的。
至于stream程布局,我刚刚完成了这个概念的certificate(在AS3中)。 这是可能的,但需要很多努力。 为什么我会努力? 由于Flash做的其他事情。
我对Flash最大的抱怨是,它把你“从浏览器中”带入了自己完全独立的应用程序。 这打破了“浏览器标准” – 即我可以在浏览器中执行的function:
- 右键点击
- 中间点击(用于打开其他标签中的链接)
- select文字
- 复制粘贴
- 印花
- 键盘快捷键(因为Flash窃取键盘焦点)
- 后退/前进button和整个“页面”的概念
- Javascript与页面上其他元素的交互(我不认为这是可能的)。
- 如果我想查看Flash文件的特定部分的来源,或者查找正在使用的图像,请在Firebug或Chrome中检查“检查元素”。
Flash有其用途。 这对内容,而不是网页是有好处的。
打印往往得不到很好的支持,而后退不起作用。
参见史蒂夫·乔布斯关于Flash的想法: http : //www.apple.com/hotnews/thoughts-on-flash/
有人知道一个叫YouTube的网站吗? 没有闪光灯就不会存在。 Flash具有绝佳的video/多媒体function,不容忽视。
在适当的情况下,当devise者/编码人员已经注意到embedded基本的可访问性function时,以适当的方式使用闪存是惊人的。
事情就像所有好东西一样,有很多滥用(flashturbation)。 尤其是刚开始的时候,人们只是想把闪光灯放在任何可以炫耀的地方。
但是我强烈反对Flash网站不好:如果制作得当,并且具有良好的用户界面devise和可访问性,它们将为networking带来全新的维度。
我认为这是一个select成本最低的媒介到达目标受众的问题,无论是Flash或Silverlight或JavaScript或纯文本。
如果您有钱,您可以拥有纯文本,仅限于JavaScript的版本,而您的目标受众则有不同的优先级。
所以我对你的问题是:你的网站是否有人以Flash为目标受众? 如果是的话,你需要远离它。 如果没有,使用任何东西给你的访问者一个很好的经验。
SEO是主要问题。 仍然Flash不可抓取。 但Adobe正在研究它。 http://www.adobe.com/devnet/flashplayer/articles/swf_searchability.html更好的swf索引。;
让我们不要忘记, Flash允许网站显示video,animation,用户交互等,它可以让这是一个简单的过程或一个怪异的技术人员,取决于你想要做什么。 许多糟糕的Flash网站是由作者决定的。
如果你不喜欢Flash,那么答案很简单,不要使用它。 不要安装Flash插件,或者在Firefox上安装Flashblock等浏览器插件。 这用一个播放button代替任何Flash电影,防止和下载,直到被点击。
但比这更好的是,如果你不喜欢Adobe或者微软给你的解决scheme,那么想出一个更好的解决scheme,或者至less让他们知道你不喜欢的东西,他们会认真对待反馈。 支持一些在Flash中改进无障碍function的人,例如访问http://niquimerret.com 。
无障碍是一个持续的问题,而不是一个将消失,闪存访问正在改善身体残疾的人。 在某些情况下,使用Flash可以增强认知和学习障碍的人的体验,当一个概念或想法更好地解释为animation而不是一页文字和静态图像时。
Flash添加了正确查看网页所需的另一个重量级组件。 Flash插件通常是bug,可能会导致浏览器崩溃。 Flash页面通常用于制作可爱的animation和其他东西,这使得很难快速浏览网站。
以上所有内容都适用于狂野的网页。
但是,对于内部业务应用程序,Flash和Silverlight允许用户在其浏览器中拥有与完整应用程序接近的东西。 在内部应用程序中,可访问性,search引擎优化和封闭源代码不是非常重要。 重要的是让用户的生活更轻松。
我不会在浏览器上安装Flash,主要是为了避免animation广告的滋扰,也是为了解决其他人提到的所有安全和隐私问题。
因此,就我而言,完全在Flash中完成的网站是不存在的。 (Wrt Youtube,我直接下载video到Miro。)
可能出于同样的原因,C程序员避开了Win32 API,Win32程序员从MFC和MFC程序员从Windows窗体。 使用和理解是非常棘手的 – 我已经尝试过使用Flex进行编程,并且相处得很好,但它并不是固有的为典型的Web应用程序devisedevise的,例如没有本地(至less在Flex 3之前)支持数据库或cookie或会话 – 你需要把所有的3放在PHP或另一个服务器端页面,并从ActionScript中调用。
尝试使用PHP创build一个简单的注册/login页面,然后再使用Flex / Flash,您将看到所有的服务器端处理都是由其他人完成的 – 再一次,这可能是由于我们有前端HTML /与“传统”Web应用程序中的后端混合使用ColdFusion或PHP等。
像其他人一样,Flash与键盘不兼容 – 尝试在Firefox中按Ctrl-T时,embedded在HTML页面中的Flash对象具有焦点(鼠标hover) – 这样可能令用户感到沮丧…
说了这么多,我仍然宁愿在Flash / Flex中创build一个Web应用程序的前端,而不是HTML / JavaScript / CSS,因为后者需要一个尖锐的学习曲线,在一段时间后变得相当扑朔迷离,因为你必须考虑“ “CSS和JavaScript的devise方面以及糟糕的devise方面 – 以及JavaScript / CSS固有的特性,以及由JavaScript库供应商(Yahoo的YUI ,Google的Ajax API, script.aculo.us等等)引入的特性。
如果你已经是一个非常了解CSS / HTML / JavaScript的web程序员,并且在你的电脑上安装了所有必需的代码检查器和运行时debugging器等等的良好开发环境,那么很容易继续工作考虑到最终用户的偏好),但是如果你像我一样,想要快速地创build一个Web应用程序并且可以快速使用,并且希望快速地添加function,同时使它变得相当漂亮,那么Flash / Flex是一个更好的选项,恕我直言。
我不喜欢基于Flash的网站,因为如果您的浏览器崩溃或您的连接死掉了一些会发生什么? 您必须再次加载并返回菜单,然后select您想要阅读的项目,等等。
只是不要这样做。 :S
我是一名Flash开发人员,我发现尽pipeFlash在编码方面需要更多努力,但潜力巨大。 你可以用简单的转换来创build非常简单的网站,如此微妙,它似乎是一个普通的HTML页面,而仍然一样轻。
同时,您可以使用带有ActionScript的OOP创build一个既复杂又包容的网站,以及像桌面应用程序一样的感觉和行为。 而且还很轻! (只有需要的内容是根据需要加载的,如同4列HTML网站一样,信息太多了。)
现在,这仍然没有迁移到ActionScript 3,但仍然使用ActionScript 2,我的Flash文件只包含2或3行的ActionScript,只有一个框架,和一个空的阶段。 其他一切都是在运行时dynamic创build或添加的。
Flash的问题不是关于Flash,而是关于懒惰的开发。
在其辩护中,大部分的问题都是关于人们如何在他们的网站上实现Flash,而不是Flash本身。 Flash确实支持可访问性,这只是大多数人在构build网站时不会考虑的。 Flash可以在手机上工作 – 它是Flash Lite ,尽pipeActionScript在早期版本中受到限制。
为什么任何人都有权自动查看网站的源代码? 一位networking作者花费了时间和精力,通过networking的媒介来分享自己的想法。 如果你想知道事情是如何起作用的,为什么不把自己的努力放在一边,然后解决呢? networking的美丽是信息,而不是媒介。
那么,如果Flash是由一家公司拥有的话,那么Adobe为什么要收购呢?这是因为它是一个非常棒的工具。 这个问题来自networking作者没有正确使用它,试图使它做的事情从来没有打算,或者只是不开发使用Flash时,将标准应用到他们的网站。
基于Flash的网站有什么坏处? 绝对没有。 这就像问枪是什么样的邪恶。 没有。 这是一个白痴挥舞着这个问题。
所有上述答案都集中在Flash,Silverlight同样糟糕或者更糟。 如果您使用NoScript运行Firefox(您应该是),那么您必须单击您希望允许运行的每个脚本。
所以用脚本,Flash和Silverlight构build你的网站。 只要确保他们仍然与他们合作残疾人士。 当我们打开一个网站,什么都看不到的时候,我们中的很多人会继续前进
Flash糟透了,我拒绝访问基于Flash的网站。 为什么? 因为我不能。 为什么? 因为Adobe太不知情 ,为64位浏览器编写插件。
看看任何一家大型汽车制造商的网站,他们都是Flash。 这取决于你在做什么。 如果你的目标是提供一个丰富的,性感的网站Flash / Silverlight会给你一个在开发时间方面的巨大优势。 如果你提供的内容/数据HTML和JavaScript(例如jQuery)可以给你很多whizbang而不需要额外的软件插件(Flash / Silverlight)。
Flash Player是导致更多Mac OS X崩溃的罪魁祸首。 它的稳定性并不是很出名。
我们中的许多人对Flash网站有不好的经验,传播了Flash是“邪恶”的想法。 我并不认为把邪恶的标签应用于任何技术或框架是公平的,它们都是为迎合特定情况而devise的,其中许多在这些情况下performance良好,例如,我对使用闪光灯video。
其他一些回应已经触及这样一个事实,即闪光的使用与我们在互联网上使用的许多标准隐喻相矛盾(例如链接和导航button),我讨厌这个和下一个networking用户一样多,但这并不真正使闪光邪恶。
虽然有人说Flash / Flex中有一些机制可以增加对这些东西的支持,但根据我的经验,这些很less实现,这不是Flash本身的错,而是非常烦人。
也许邪恶不是Flash / Flex,但是Adobe并没有让这些事情变得更容易或者让开发者更加明白。
对于我从来没有在Flash开发的logging
Flash不是坏事,人们用它做的事情是邪恶的。
对于高飞vectoranimation,甚至可能是360产品视图或交互图,是的。 Flash可以使用〜15%cpu在我的古盒子上做60美丽的全高清animation。
对于networkingvideo,如果你没有别的select,我想。
但是对于整个网站和这些被称为“RIA”的东西,没有。
如此令人震惊的是,一项技术在devise时要做的更好。
Flash是Web开发中学习的另一个东西。 不用了,谢谢! 已经有太多了。 如果没有它我可以做我的工作,我不需要它。
编程每天都less付。