var str:String=stage.loaderInfo.parameters["param1"];//获取网页中传入到flash的参数.

注意sage的大小写。
其中param1即是你通过网页传递给swf的参数。

例如swf?param1=100;
或者别的什么。

需要注意的是 传入的参数统一都是 String 类型。使用起来请注意类型转换
本人有一个摄像头。

上边写了 飞火流星 四个很sb的字。
曾几何时为摄像头驱动大费周折。

什么万能驱动啊。什么附带光盘啊。都不行。
安装了就是一个字“黑屏”!

不是摄像头的毛病,我曾经正常使用过这个摄像头。
一定是驱动问题。

最后找了一个老版本的驱动才算是搞定。

如果你使用了万能驱动,或者下载了 飞火流星 3030 型号的最新驱动那你一定也会和我一样郁闷。
安装完成提示摄像头名字为:
Vimicro USB PC Camera (ZC30X)

那就说明驱动有问题,可定漆黑一片,还带闪电!

如果你幸运的看到了我这个博文。恭喜你。你的飞火流星有可以使用了!

请下载下边压缩包。解压双击安装 setup.exe

安装完成之后 把摄像头重新插拔一次。
提示:

Vimicro USB PC Camera (VC0305)

那就ok了。



出现这个错误提示 是因为你使用了 一些系统保留的函数名称

例如 下边代码:

_sprite.addEventListener(MouseEvent.MOUSE_DOWN, onMouseDown);


add了一个监听,当MOUSE_DOWN的时候调用函数 onMouseDown 这个函数。
然而 因为 onMouseDown这个函数名称是 系统保留的函数名称。
所以会出现迁移问题。

解决方法是 更改 函数名称。
_sprite.addEventListener(MouseEvent.MOUSE_DOWN, onMyMouseDown);


记得修改对应的函数名称。这样就不会出现迁移问题了。
readyState表示XMLHttpRequest对象的处理状态:
0:XMLHttpRequest对象还没有完成初始化。
1:XMLHttpRequest对象开始发送请求。
2:XMLHttpRequest对象的请求发送完成。
3:XMLHttpRequest对象开始读取服务器的响应。
4:XMLHttpRequest对象读取服务器响应结束。

status表示返回页面的状态,最常见的有403 404 500 502 503

     if(status == 403)
     {
      alert("你请求的页面禁止访问!");
     }
     else if(status == 404)
     {
      alert("你请求的页面不存在!");
     }
     else if(status == 500)
     {
      alert("你请求的页面服务器内部错误!");
     }
     else if(status == 502)
     {
      alert("Web服务器收到无效的响应!");
     }
     else if(status == 503)
     {
      alert("服务器繁忙,请稍后再试!");
     }
     else if(status == 200)
     {
      alert("状态正常!");
     }
     else
     {
      alert("未知错误,请重试!");
      }
不要奇怪。
为什么会出现两个window.onload。
很久很久以前。
我一直不明白为什么 有的 JavaScript 必须写在页面的底部才会正常执行。
而放到页面的head区则没有任何反应。

后来我明白了 因为页面加载速度的原因。
有的JavaScript脚本必须等待页面加载结束 才能正常执行。

对于这样的情况有两个解决方法:
1、将脚本写到html的结束位置。这样只有html全部接在完毕后才会加载执行JavaScript脚本。
2、将脚本放在任意位置。通过 window.onload来执行脚本。

window.onload的意思是当页面加载完毕的时候执行。

很久很久以后,我遇到了一个新的问题。
我有两个window.onload=function(){};
Windows Media Player文件

杀破狼 原声一曲

甄子丹 vs 吴京
这是一个JavaScript版本的记忆菜单。
通过cookie来记录用户当前点击的菜单项,JavaScript代码如下:
在制作记忆菜单的时候
我遇到了这个问题:
getElementsByClassName 在火狐下正常,IE下却说不认识这个方法。脚本错误。

查阅了相关资料 发现是因为标准状态下 不认识getElementsByClassName 这个方法。

标准状态下据说有三个方法可以支持:
分别是:
1. 通过顶层document节点获取:
            (1) document.getElementById(elementId):该方法通过节点的ID,可以准确获得需要的元素,是比较简单快捷的方法。如果页面上含有多个相同id的节点,那么只返回第一个节点。
             如今,已经出现了如prototype、Mootools等多个JavaScript库,它们提供了更简便的方法:$(id),参数仍然是节点的id。这个方法可以看作是document.getElementById()的另外一种写法,不过$()的功能更为强大,具体用法可以参考它们各自的API文档。
            (2)document.getElementsByName(elementName):该方法是通过节点的name获取节点,从名字可以看出,这个方法返回的不是一个节点元素,而是具有同样名称的节点数组。然后,我们可以通过要获取节点的某个属性来循环判断是否为需要的节点。
            例如:在HTML中checkbox和radio都是通过相同的name属性值,来标识一个组内的元素。如果我们现在要获取被选中的元素,首先获取改组元素,然后循环判断是节点的checked属性值是否为true即可。
           (3)document.getElementsByTagName(tagName):该方法是通过节点的Tag获取节点,同样该方法也是返回一个数组,例如:document.getElementsByTagName('A')将会返回页面上所有超链接节点。在获取节点之前,一般都是知道节点的类型的,所以使用该方法比较简单。但是缺点也是显而易见,那就是返回的数组可能十分庞大,这样就会浪费很多时间。那么,这个方法是不是就没有用处了呢?当然不是,这个方法和上面的两个不同,它不是document节点的专有方法,还可以应用其他的节点,下面将会提到。
 如果忘记一个GUI需要为产品产生的最大价值是产品气质塑造,那会不会将自己变成一个平淡无奇的角色呢。因为我理解对于设计来说,只有经验的总结和适合的方法,而没有一个绝对度量的准绳,但每个人理解世界的方式不同,这也正是世界多姿多彩的原因。

弗里德里希·威廉·尼采:

“自从厌倦于追寻,我已学会一觅即中;自从一股逆风袭来,我已能抗御八面来风,驾舟而行”

每当我看到这句话,我都会深深的坚信一些事情,而更加不屑与另一些事情。假如有人说设计如何走向成功好像绿野仙踪的黄金之路一样清晰,那么我会觉得他不仅仅拯救了设计,并且拯救了世界,还有黑暗中苦苦寻觅的人们。但事实上,我看到的仍然是他们锤头丧气的站在那里。我们永远不会得到最好的办法,因为世界并不是触手可及的规则,而是在不停变化的信息汇聚。所以我们能做的要么祈祷,要么靠自己的双手寻求救赎。。。

我理解的设计:

当我还在Yahoo的时候,Chris从美国来到我们的团队,提出“设计是为人们解决问题”的时候,我至今对此充满疑问(此篇文章在我的blog里可以找到)。其实我从来不反对这点,设计师当然需要为用户解决问题,但如果用这个作为产品设计的最终目的和准则,是不是有点太幼稚了。。?很明显他忽略了一些问题,而且还是非常重要的问题。

按照我的经验,对于一个视觉设计师来说,让我冒昧的为我理解的设计分为三个层次:

1.可用的、易用的

2.漂亮的 + 可用的易用的

3.拥有独特产品气质的 + 漂亮的 + 可用的易用的
一个理性、一个野性,两个都是我们不能缺少的。矛盾?世界就是如此矛盾,我们在这矛盾一正一负之间提升自己,实现自己,才是最主要的。所谓的智慧也是根据不同的情况,做不同的决策和选择。只有野性只能称为匹夫,只有理性就是腐儒,唯有二者都具备,才算强者。

上一个Section我说了很多疯狂的话,不符合边际,而且也似乎不切合实际。也许我们在拥有雄心壮志和充分的自信以后,该冷静下来,该用理性思考我们的设计。其实做设计和做事都是一样的,没有一个理性的方法,是无法达到满意的结果的。理性与癫狂看似矛盾,其实他们完全都是一体,处理好他们之间的关系,那就是做事成功的基础。对于设计来说,我总结为:野性代表态度,而理性代表方法

那么对于一个GUI来说,他需要如何理性呢?

明确目标

当我们接到一个设计需求的时候,你是否明确的知道它的目标呢?这个问题尤为重要,他是这个设计需求的最初动机。我相信一个PM最希望你知道的也是这个,也希望你能提供更好的支持。你真的要明白,这个设计需求为什么会写成这样,他真实想达到的目的是什么。这个问题将围绕着你整个项目进展的主题

我们要为产品解决问题,那么就要首先知道问题在哪里,要知道产品的需求是各种各样的,不同的问题要用不同的办法解决。比如:如果PM需要提高产品首页的引导性,你该如何做?如果PM在塑造一个社区产品,他希望这个社区统一性更高,你该如何做?如果你在做一次改版,那么它的目的是什么?假如你塑造一个购物流程,你该怎样使它易用性更高



比如,我最近主导的项目该是Yahoo widget改版,那么我最先就问PM,这次改版的目的,他们很清楚的告诉我_、解释什么是Widget,更强的用图形来表达逻辑〿、提高首页的引导性,将用户导入到其他模块中去。OK,我现在非常明确的知道我要解决什么问题,于是在后来交互原形设计,线框图等等的步骤上,这个目标始终在我脑海里的最高点。我时刻都在想,如何才能把Widget解释的更清晰。只要有了一点想法,就会去和PM探讨。这样,我每次所说的办法都会得到他们的认可,并且说到他们的心里

我想明确目标就相当于给与了自己在黑暗中有一盏灯,而这盏灯就可以连接你和PM的心,也可以成为良好沟通的开始

学会分析与思考
我认为一个设计师必须有这样的精神和野性才能有基础创造新的东西,毕竟,创造才是设计师更高的追求。而我们,正是要成为不断创造的人。

好,上面两个部分的话题是不是太枯燥了?OK,现在我们来谈一些够味道的话题----设计师的野性

我认为一个设计师必须要有要有足够的野性和个人的一面,这份野性包括对生活的执著和对自我的迷恋,还有独特的人生理解和丰富的阅历。好了,我下面的话应该是我对你的开胃酒,如果你觉得大为不敬或者过于肤浅,可以不看。毕竟这个部分,我只谈野性,在这里我畅所欲言。

理性触及不到的地方

我们似乎一再强调一个话题:我们的设计师不够理性,他们不懂得产品。每当我们每每称道于西方优秀设计方法和产品流程的时候,而又回头谴责自己的设计师,你们太为所欲为了,你们设计的东西完全不合理。

好了,我们出现了一个问题,为什么有时候我们看到国外的设计是那样的充满想象力,那样动人心魄。而自己的东西总是像一块四面饼,也许很漂亮,但一点也没有新鲜的空气。难道我们此时此刻又太理性了吗?不对,我们忘记了生活,我们忘记了自我,我们还忘记了高于理性的东西。其实我们从来都不缺乏新鲜的想法,但我们被一种紧绷的思想一直禁锢着。我们顾虑太多,而让自己丢失了本我。从而让设计的灵性就此丢失。
如果你熟识了如何和别人沟通也不要洋洋自得,因为在生活中你尽管处处小心还是不免阴沟翻船。所以在流程当中,你仍然会和所有人摩擦,但不要沮丧,因为这些都不是重要的。那么什么才是重要的呢?就是发挥所有人的力量,把产品做好,这个就是我们一切沟通的根基。

作为一个设计师,你是否掌握了与人沟通的能力?虽然我们每个人都有语言能力,但你是不是真的能在团队中让每个人都明白你所说的。。?我之所以把这个 Section放的这么靠前,是因为沟通能力真的太重要了。它就像你最锋利的工具,当面对麻烦或者困惑的时候,利用它可以披荆斩棘,让自己迅速找到解决问题的办法。

每个人都是狭隘固执的,所以我们需要沟通

每当我聊起“狭隘”这个词的时候,都喜欢以庄周的《秋水篇》为例,这篇文章大概讲的意思就是秋天因为雨水的丰足,河水满了。两岸的芦苇也茂密起来,河神看到很高兴,于是自己也狂妄起来,认为自己是世界最大的了。直到有一天他看到了大海。。。。。这个小故事说明什么呢?我们每个人都因为环境、年龄、经历的不同对世界有不同的认知,所以我们在做事情的时候就有无数个不同点,那么分歧与误会就会不断。。。

那么在一个团队中呢?作为设计师的你,是否能做到像PM那样理解产品呢?是否能像客户一样理解他的需求呢?是否能理解用户所面临的问题呢?好了,看来这很难,因为每个人的认知都是有限的。反过来说,团队里的其他人并不像你那样善于把握色彩,精于控制形体,那么我们需要作什么呢?总结为:“不断让自己去理解别人的话,不断地把自己的想法讲给别人”

这就是在一个团队中,沟通的重要性显而易见

沟通的方法
作者:dooky 来源:互联网

在这个Section里我主要谈了我对UED设计师在团队中价值的认知,我非常高兴的告诉每一个设计师,当你仅仅画出东西的时候,你已经入门了,而当你学会解决问题,把握产品的时候,你已经上路了。

当我合上罗素的《西方的智慧》这本小册子,我意识到我该有有必要写些什么了。。。作为一名不甚合格的GUI设计师,我觉得我该把这两年来的思辨好好总结出来,供所有来这里的朋友分享。其实我也一直在问自己,到底如何才能成为一个优秀的设计师?我一开始觉得一个优秀的设计师,必然有优秀的技能。但我后来越来越深刻地感觉到,一个优秀的思考方式,才是获得成功的关键。那么一个GUI的价值到底是什么呢,当一个老板或者总监面对你的时候,你是否知道她希望看到一个怎样的家伙?

团队需要什么样的GUI

那么我先简单的来说说一个团队的构成:

PM:产品的负责人,他把握了整个产品的灵魂,他撰写PRD,并且告诉团队中的所有人,这个产品是做什么的。我一直认为PM应该是一个高瞻远瞩,并且温和而有原则的人。

工程师:他负责为产品实现功能,他们告诉团队中所有人,什么可以做到,什么不可以做到。

市场:只有一句话“我要赚钱,别的你们看着办吧”

CC:客服部门,他们会聆听用户的声音,并且告诉团队里的人

QA:测试,发现BUG,并且和工程师还有UED一起处理掉他们

如何给Flash传递数组信息。

[不指定 2008/10/22 14:41 | by Space.As ]
提出这个问题的你,想必十分的郁闷。
你开始是传入字符串给Flash做分析。

后来突然发现字符串 无法表现更多的内容。

于是乎你就想,能否传入一个数组或者多维数组给Flash  这样就可以表现更多的信息了;

非常不幸的,没有直接的方法。
我可以提供给你两种可行的方法。

1、字符串拆分处理!
  
     a1/av1-av2-av3|b2/bv1-bv2-bv3

     通过Flash对字符串的处理 首先通过
     |  来将他们分割为两条信息

     a1/av1-av2-av3
     b2/bv1-bv2-bv3
    
    然后通过 / 和 -  来分为 a1 包含了 av1 av2 av3   和 b1 包含了 bv1 bv2 bv3 这个信息。

   这样是不得已而为之。处理起来也感觉不爽。

2、上上策!

    我只说三个字母 你就知道 最好的方法是什么了。

    XML  
一般来讲JavaScript给Flash传递的参数都是有效的。
但在实际使用过程中往往发现传递的参数无法正确的被Flash应用。

这并不是因为没有传递成功。

我发现JavaScript直接传给flash的参数往往是字符串的类型。

也就是说 当你想给Flash传递一个Number类型的参数,往往会以失败告终……。

就算你在JavaScript中var xm:Number=2 ;
然后再传递给Flash,Flash可能还是把它当作字符串String的类型处理。

所以如果你要传递的参数有严格的数据类型。别忘了在flash接受到之后 进行强制转换!

例如我通过JavaScript给Flash写入了一个数字 mn=5

我在flash还有强制转化一下:

var flashmn:Number=Number(mn);

分页: 4/36 第一页 上页 1 2 3 4 5 6 7 8 9 10 下页 最后页 [ 显示模式: 摘要 | 列表 ]