开发,运营,市场和吃饭的关系理解

做市场一年多,对运营,开发的同学也有一定的了解和接触,最近在想一个他们之间的一个能跟生活扯到一起的关系,也可能是由于最近在看易经的原因吧。想试图去挖一些不同事情的内在规律。

一款产品,从开发到运营再到市场,像不像请朋友来家里吃一顿饭这样呢?
其实是可以的。
开发一款产品的过程,就好比做饭的过程一样,该放什么调料,该炒什么菜。
运营一款产品的过程,就好比客人在桌上怎么吃,怎么才吃的开心,新菜的新吃法要教会客人,等等。
推广一款产品的过程,就好比做好了一桌这样的菜,该叫什么样的客人来吃饭。

他们之间是独立的,也是相互联系的。
独立的是各自有各自的责任,做饭的人要把菜做熟,做的好吃,陪客人吃饭的人要把桌上的气氛搞起来,使大家吃的开心,新的吃法也要教,喊人来吃饭也要考虑该叫多少人才够,该叫什么人才会喜欢家里的菜。

相互联系的是因为相互调需要配合和协调,做菜的人要跟陪客人吃饭的人商量桌子有多大,能摆多少菜,要跟喊人来吃饭的人说我的今天的菜有什么特色。陪客人吃饭的人要跟做菜的人建议这个地方的以前的客人喜欢吃什么菜,有多大食量,要跟喊人来吃饭的人讲清楚今天大概要多少人就够了,要什么样的人。喊人的要跟做菜的人建议现在的人喜欢吃什么样的菜,吃多少量,也要告诉陪人吃饭的人讲清楚今天来的人有什么特点,好让陪人吃饭的人和做菜的人有一个准备。

有点乱,自己写着玩的,没想到好的表达方式,被人干扰了。有兴趣的朋友可以发表下自己的看法。没写完,有事先闪。

美职业顾问公布15个谷歌面试题

美国西雅图市求职顾问刘易斯·林(Lewis Lin)收集了谷歌向应聘者提出过的140个问题,其中15个问题让许多应聘者自叹弗如。       

  对那些身处经济衰退大潮中的初级经理和软件开发者而言,谷歌是一个避风港。但其招聘门槛较高,首先,谷歌更青睐长春藤联盟(由美国八所知名大学所组成)的毕业生;其次,即使应聘者已年过30,谷歌也很在意其GPA(平均成绩点数)分数;第三,谷歌需要的是那些想改变世界的人。
        而且,即使应聘者满足了上述要求,也有可能在面试中被谷歌提出的问题所难倒。以下是15个让许多应聘者感到自己很愚笨的谷歌面试题。
1.问题:一辆校车能装下多少个高尔夫球?
应聘职位:产品经理
2.问题:如果让你清洗西雅图市所有的窗户,你会对此索价多少?
应聘职位:产品经理
3.问题:在一个重男轻女的国家里,每家每户都想生男孩。若一户人家生了一个女孩,便会再生一个,直到生下的是男孩为止。请问这个国家的男女比例是多少?
应聘职位:产品经理
4.问题:全世界共有多少位钢琴调音师?
应聘职位:产品经理
5.问题:下水道井盖为什么是圆的?
应聘职位:软件工程师
6.问题:为旧金山市设计一个紧急疏散方案。
应聘职位:产品经理
7.问题:时钟的指针一天内总共会重合多少次?
应聘职位:产品经理
8.问题:阐释“死牛肉”的意义所在。
应聘职位:软件工程师
9.问题:一个人开车来到旅馆,变得一无所有。究竟发生了什么事情?
应聘职位:软件工程师
10.问题:你想知道好友鲍勃是否有你正确的电话号码,但又不能直接问他。你必须在卡片上留言,让伊芙将卡片较交给鲍勃。除了问题以外,你还应该在卡片上写什么,才能既确保鲍勃能看懂留言,又使伊芙看不出卡片上写有你的电话号码。
应聘职位:软件工程师
11.问题:你是一艘海盗船的船长,你的船员要投票决定如何平分金条。如果与你意见一致的船员数量少于一半,你将被杀死。你应该如何提议分配金条,才能既分得较多赃物,又能活下来?
应聘职位:工程经理
12.问题:你有8个大小一样的球,其中7个重量相同,只有一个略重一些。给你一个天平,而且只准称两次,如何找出重量不同的那个球?
应聘职位:产品经理
13.问题:你在一幢100层高的大楼中,给了你两个鸡蛋。鸡蛋有时非常易碎,有时又异常坚韧。这意味着,如果在第1层扔下鸡蛋,鸡蛋或许会碎裂,而如果是从第100层扔下鸡蛋,鸡蛋或许安然无恙。这两只鸡蛋一模一样。你需要计算出,最高从哪层楼扔下时,鸡蛋不会碎。问题是,你需要扔多少次鸡蛋才能算出该楼层。整个过程中,你只允许打碎两个鸡蛋。
应聘职位:产品经理
14.问题:向你8岁的侄子或外甥解释什么是数据库,只能用三个句子。
应聘职位:产品经理
15.问题:你缩小到只有一枚五分硬币那么高,你的质量也成比例缩小以保持原有密度不变。随后你被扔到一个空的玻璃搅拌器里,搅拌刀片将在60秒后开始运转,你该怎么办?
应聘职位:产品经理

Anehta的水印(Watermark)机制

Anehta中采用了一种同机识别的技术,我在项目中将其称为“水印”(Watermark).

看过我的录像演示的人应该有印象,效果如下:

如果一个客户端被打上了水印,那么,不管客户端删除了cookie、缓存,抑或是切换了各种不同的浏览器,其水印都不会变化。

换句话来说,就是常规的清除上网痕迹的措施,都无法清除掉anehta给客户端打上的水印。

这看起来好像跟变魔术一样,其实揭穿了很简单,我是通过Flash的shared objects来做的,也可以称作flash cookie。 Read the rest of this entry »

8个有效提高网站转换率的设计方法(翻译)

原文是一篇来自Smashing Magazine的优秀文章,详细叙述了8个可以提高电子商务网站转换率的方法(当然也适用于其他产品介绍类的网站)。基本上都是从网站设计的角度上分析了一些取得用户信任、改善整体品牌形象、提高用户体验的方法,很有启发意义。我按照自己的理解把其中的重点翻译了一下:

1. 使用潜意识(Subliminal Suggestion)

简单来说就是在网站设计中更多地应用图片来间接传达一些信息。一些和产品无关的图片也可以改变用户对网站的印象,在潜意识中影响用户的消费欲。
2. 避免滥用产品比较(Prevent Choice Paralysis)

提供给用户选择权是好事,但如果强迫用户在过多的选项中作出选择时,可能会流失部分用户。如果必须要让用户作出选择,完全可以先推荐给用户一个默认选项,并且在视觉中强调出来。
3. 把真实产品展现出来(Show The Product)

用户经常会“以貌取人”,一定要让用户能够想象出他们将来使用的产品长什么样。
4. 提供给用户试用产品的机会(Let People Try It)

延续了上一点所说的,提供试用机会是进一步提高用户参与度的做法。在你的产品质量OK的前提下,每一个认真试用的用户都会在作出是否购买的决定前有足够依据,并且已经成为一个花了时间和精力使用你产品的潜在客户。
5. 注意力、兴趣、意愿和行动(AIDA)

用出色的设计吸引用户注意力,通过产品简介让用户产生兴趣,告诉他们你的产品能带来什么好处来让用户产生购买的意愿和冲动,最后用便捷和清晰的流程帮助用户将消费意愿转化为购买行为。
6. 引导用户的浏览方向(Guide Attention)

在视觉和排版设计中多运用一些如箭头之类的元素,人们常常好奇箭头所指处的内容,所以引导用户一步步完成上一点所说的几个步骤,并且最后指向“注册”、“购买”等链接。
7. 永远要让用户有东西可点(Always Provide Next Actions)

在所有主要的及用户可能访问到的地方都要明显地告知用户接下来可以做什么、怎么做,并且留下可点击的按钮或者链接让用户采取进一步的行动。
8. 古腾堡法则(The Gutenberg rule)

基本上就是从上到下、从左到有的浏览顺序(希伯来和阿拉伯语系除外)。用户的视觉中心往往在页面的左上方,而最后结束浏览时视线往往落在右下角,所以合理利用这个法则可以帮助用户更好地获取内容并且采取行动。

原文:http://www.jjying.cn/blog2/8-Useful-Tips-To-Help-Your-Website-Convert/

盛大的内部培训体系概况

游戏市场总监(经理)培养计划:
游戏运营节点生命周期与管理流程
经验值和2+8激励机制
盛大游戏市场总监(经理)职责
营销预算制订和监控、游戏运营立项管理
运营经理运营案例分享
主题讨论:宣传的创新性探讨
用数据把握世界
网络游戏数据概念与经验
产品品牌成功的10个方法
数据系统与案例
网络游戏运营中的宣传
人推人的互联网行销方式
主题讨论:活动中的创新表现
项目运营重要的组织形式:活动
CSP模式下有效的商业化手段分析
网络游戏在节假日的运营
游戏运营中的风险处理
网游营销新探索-向电影业取经
主题讨论:如何有效面试一名宣传策划
人事管理
法律管理
游戏运营中的外部沟通
产品经理运营案例分享
如何更加有效利用盛大的平台资源

产品经理培训课程

什么是网络游戏
盛大的历史与文化
盛大游戏有限公司战略及运作
产品不足运营补的案例分析
游戏节点生命周期与管理流程
经验值和游戏式管理
盛大游戏的游戏项目管理
产品经理职责
盛大产品经理的历史
项目部的组成与内部管理
产品经理项目管理三大铁律
产品经理运营必修三项内容
产品经理应具备的10个素养
产品经理肩负的三大职责
产品经理的工具梳理和使用
预算制定和监控
游戏运营立项管理
用数据把握世界
网络游戏数据概念与经验
数据系统与案例
数据基础及广告投放
互联网行销方式
网络游戏运营中的宣传
人事管理
法律管理
财务管理
游戏运营中的外部沟通

服务器管理员岗位
资格认证培训
盛大网络服务器管理员职责
服务器的安装与配置
服务器管理与维护
SQL Server 2000 管理和维护
RedHat Linux AS3安装与配置
服务器安全
服务器应急响应
盛大网络服务器管理流程

55种网页常用小技巧

oncontextmenu=”window.event.returnValue=false” 将彻底屏蔽鼠标右键
<table border oncontextmenu=return(false)><td>no</td></table> 可用于Table
2. <body onselectstart=”return false”> 取消选取、防止复制
3. onpaste=”return false” 不准粘贴
4. oncopy=”return false;” oncut=”return false;” 防止复制
5. <link rel=”Shortcut Icon” href=”favicon.ico”> IE地址栏前换成自己的图标
6. </link><link rel=”Bookmark” href=”favicon.ico”> 可以在收藏夹中显示出你的图标
7. <input style=”ime-mode:disabled”/> 关闭输入法
8. 永远都会带着框架
<script language=”Javascript”><!–
if (window == top)top.location.href = “frames.htm”; //frames.htm为框架网页
// –></script>
9. 防止被人frame
<script LANGUAGE=JAVAscript><!–
if (top.location != self.location)top.location=self.location;
// –></script>
10. 网页将不能被另存为
<noscript><iframe src=*.html></iframe></noscript>
11. <input type=button value=查看网页源代码
onclick=”window.location = “view-source:”+ “http://yi.sy64.com”"/>
12.删除时确认
<a href=”javascript:if(confirm(“确实要删除吗?”))location=”boos.asp?&areyou=删除&page=1″”>删除</a>
13. 取得控件的绝对位置
//Javascript
<script language=”Javascript”>
function getIE(e){
var t=e.offsetTop;
var l=e.offsetLeft;
while(e=e.offsetParent){
t+=e.offsetTop;
l+=e.offsetLeft;
}
alert(“top=”+t+”/nleft=”+l);
}
</script>
//VBscript
<script language=”VBscript”><!–
function getIE()
dim t,l,a,b
set a=document.all.img1
t=document.all.img1.offsetTop
l=document.all.img1.offsetLeft
while a.tagName<>”BODY”
set a = a.offsetParent
t=t+a.offsetTop
l=l+a.offsetLeft
wend
msgbox “top=”&t&chr(13)&”left=”&l,64,”得到控件的位置”
end function
–></script>
14. 光标是停在文本框文字的最后
<script language=”javascript”>
function cc()
{
var e = event.srcElement;
var r =e.createTextRange();
r.moveStart(“character”,e.value.length);
r.collapse(true);
r.select();
}
</script>
<input type=text name=text1 value=”123″ onfocus=”cc()”/>
15. 判断上一页的来源
javascript:
document.referrer
16. 最小化、最大化、关闭窗口
<object id=hh1 classid=”clsid:ADB880A6-D8FF-11CF-9377-00AA003B7A11″>
<param name=”Command” value=”Minimize”></param></object>
<object id=hh2 classid=”clsid:ADB880A6-D8FF-11CF-9377-00AA003B7A11″>
<param name=”Command” value=”Maximize”></param></object>
<object id=hh3 classid=”clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11″>
<param NAME=”Command” VALUE=”Close”></param></object>
<input type=button value=最小化 onclick=hh1.Click()/>
<input type=button value=最大化 onclick=hh2.Click()/>
<input type=button value=关闭 onclick=hh3.Click()/>
本例适用于IE
17.屏蔽功能键Shift,Alt,Ctrl
<script>
function look(){
if(event.shiftKey)
alert(“禁止按Shift键!”); //可以换成ALT CTRL
}
document.onkeydown=look;
</script>
18. 网页不会被缓存
<meta HTTP-EQUIV=”pragma” CONTENT=”no-cache”>
</meta><meta HTTP-EQUIV=”Cache-Control” CONTENT=”no-cache, must-revalidate”>
</meta><meta HTTP-EQUIV=”expires” CONTENT=”Wed, 26 Feb 1997 08:21:57 GMT”>
或者</meta><meta HTTP-EQUIV=”expires” CONTENT=”0″>
19.怎样让表单没有凹凸感?
<input type=text style=”border:1 solid #000000″/>

<input type=text style=”border-left:none; border-right:none; border-top:none; border-bottom:
1 solid #000000″/>
20.<div><span>&<layer>的区别?
<div>(division)用来定义大段的页面元素,会产生转行
<span>用来定义同一行内的元素,跟<div>的唯一区别是不产生转行
<layer>是ns的标记,ie不支持,相当于<div>
21.让弹出窗口总是在最上面:
<body onblur=”this.focus();”>
22.不要滚动条?
让竖条没有:
</body><body style=”overflow:scroll;overflow-y:hidden”>
</body>
让横条没有:
<body style=”overflow:scroll;overflow-x:hidden”>
</body>
两个都去掉?更简单了
<body scroll=”no”>
</body>
23.怎样去掉图片链接点击后,图片周围的虚线?
<a href=”#” onFocus=”this.blur()”><img src=”logo.jpg” border=0/></a>
24.电子邮件处理提交表单
<form name=”form1″ method=”post” action=”mailto:****@***.com” enctype=”text/plain”>
<input type=submit/>
</form>
25.在打开的子窗口刷新父窗口的代码里如何写?
window.opener.location.reload()
26.如何设定打开页面的大小
<body onload=”top.resizeTo(300,200);”>
打开页面的位置</body><body onload=”top.moveBy(300,200);”>
27.在页面中如何加入不是满铺的背景图片,拉动页面时背景图不动
<style>
body
{background-image:url(logo.gif); background-repeat:no-repeat;
background-position:center;background-attachment: fixed}
</style>
28. 检查一段字符串是否全由数字组成
<script language=”Javascript”><!–
function checkNum(str){return str.match(//D/)==null}
alert(checkNum(“1232142141″))
alert(checkNum(“123214214a1″))
// –></script>
29. 获得一个窗口的大小
document.body.clientWidth; document.body.clientHeight
30. 怎么判断是否是字符
if (/[^/x00-/xff]/g.test(s)) alert(“含有汉字”);
else alert(“全是字符”);
31.TEXTAREA自适应文字行数的多少
<textarea rows=1 name=s1 cols=27 onpropertychange=”this.style.posHeight=this.scrollHeight”>
</textarea>
32. 日期减去天数等于第二个日期
<script language=Javascript>
function cc(dd,dadd)
{
//可以加上错误处理
var a = new Date(dd)
a = a.valueOf()
a = a – dadd * 24 * 60 * 60 * 1000
a = new Date(a)
alert(a.getFullYear() + “年” + (a.getMonth() + 1) + “月” + a.getDate() + “日”)
}
cc(“12/23/2002″,2)
</script>
33. 选择了哪一个Radio
<html><script language=”vbscript”>
function checkme()
for each ob in radio1
if ob.checked then
window.alert ob.value
next
end function
</script><body>
<input name=”radio1″ type=”radio” value=”style” checked/>Style
<input name=”radio1″ type=”radio” value=”barcode”/>Barcode
<input type=”button” value=”check” onclick=”checkme()”/>
</body></html>
34.脚本永不出错
<script LANGUAGE=”Javascript”>
<!– Hide
function killErrors() {
return true;
}
window.onerror = killErrors;
// –>
</script>
35.ENTER键可以让光标移到下一个输入框
<input onkeydown=”if(event.keyCode==13)event.keyCode=9″/>
36. 检测某个网站的链接速度:
把如下代码加入</body><body>区域中:
<script language=Javascript>
tim=1
setInterval(“tim++”,100)
b=1
var autourl=new Array()
autourl[1]=”www.njcatv.net
autourl[2]=”javacool.3322.net”
autourl[3]=”www.sina.com.cn
autourl[4]=”www.nuaa.edu.cn
autourl[5]=”www.cctv.com
function butt(){
document.write(“<form name=autof>”)
for(var i=1;i<autourl .length;i++)
document.write(“<input type=text name=txt”+i+” size=10 value=测试中……> =》<input type=text
name=url”+i+” size=40/> =》<input type=button value=GO
onclick=window.open(this.form.url”+i+”.value)/><br />”)
document.write(“<input type=submit value=刷新/></autourl></form>”)
}
butt()
function auto(url){
document.forms[0]["url"+b].value=url
if(tim>200)
{document.forms[0]["txt"+b].value=”链接超时”}
else
{document.forms[0]["txt"+b].value=”时间”+tim/10+”秒”}
b++
}
function run(){for(var i=1;i<autourl .length;i++)document.write(“<img src=http://”+autourl+”/”+Math.random()+” width=1 height=1
onerror=auto(“http://”+autourl+”")>”)}
run()</autourl></script>
37. 各种样式的光标
auto :标准光标
default :标准箭头
hand :手形光标
wait :等待光标
text :I形光标
vertical-text :水平I形光标
no-drop :不可拖动光标
not-allowed :无效光标
help :?帮助光标
all-scroll :三角方向标
move :移动标
crosshair :十字标
e-resize
n-resize
nw-resize
w-resize
s-resize
se-resize
sw-resize
38.页面进入和退出的特效
进入页面<meta http-equiv=”Page-Enter” content=”revealTrans(duration=x, transition=y)”>
推出页面</meta><meta http-equiv=”Page-Exit” content=”revealTrans(duration=x, transition=y)”>
这个是页面被载入和调出时的一些特效。duration表示特效的持续时间,以秒为单位。transition表示使用哪种特效,取值为1-23:
  0 矩形缩小
  1 矩形扩大
  2 圆形缩小
  3 圆形扩大
  4 下到上刷新
  5 上到下刷新
  6 左到右刷新
  7 右到左刷新
  8 竖百叶窗
  9 横百叶窗
  10 错位横百叶窗
  11 错位竖百叶窗
  12 点扩散
  13 左右到中间刷新
  14 中间到左右刷新
  15 中间到上下
  16 上下到中间
  17 右下到左上
  18 右上到左下
  19 左上到右下
  20 左下到右上
  21 横条
  22 竖条
  23 以上22种随机选择一种
39.在规定时间内跳转
</meta><meta http-equiv=V=”REFRESH” content=”5;URL=http://www.seosem.cn”>
40.网页是否被检索
</meta><meta name=”ROBOTS” content=”属性值”>
  其中属性值有以下一些:
  属性值为”all”: 文件将被检索,且页上链接可被查询;
  属性值为”none”: 文件不被检索,而且不查询页上的链接;
  属性值为”index”: 文件将被检索;
  属性值为”follow”: 查询页上的链接;
  属性值为”noindex”: 文件不检索,但可被查询链接;
  属性值为”nofollow”: 文件不被检索,但可查询页上的链接。
41、email地址的分割
把如下代码加入<body>区域中
<a href=”mailto:webmaster@abc.com”>webmaster@abc.com</a>
42、流动边框效果的表格
把如下代码加入</body><body>区域中
<script>
l=Array(6,7,8,9,’a',’b',’b',’c',’d',’e',’f')
Nx=5;Ny=35
t=”<table border=0 cellspacing=0 cellpadding=0 height=”+((Nx+2)*16)+”><tr>”
for(x=Nx;x<nx +Ny;x++)
t+=”<td width=16 id=a_mo”+x+”> ”
t+=”</nx></tr><tr><td width=10 id=a_mo”+(Nx-1)+”> </td><td colspan=”+(Ny-2)+” rowspan=”+(Nx)+”> </td><td width=16 id=a_mo”+(Nx+Ny)+”></td></tr>”
for(x=2;x< =Nx;x++)
t+=”<tr><td width=16 id=a_mo”+(Nx-x)+”> </td><td width=16 id=a_mo”+(Ny+Nx+x-1)+”> </td>”
t+=”<tr>”
for(x=Ny;x>0;x–)
t+=”<td width=16 id=a_mo”+(x+Nx*2+Ny-1)+”> </td>”
document.write(t+”</tr></table>”)
var N=Nx*2+Ny*2
function f1(y){
for(i=0;i<n ;i++){
c=(i+y)%20;if(c>10)c=20-c
document.all["a_mo"+(i)].bgColor=”‘#0000″+l[c]+l[c]+”‘”}
y++
setTimeout(‘f1(‘+y+’)',’1′)}
f1(1)
</n></script>
43、Javascript主页弹出窗口技巧
窗口中间弹出
<script>
window.open(“http://yi.sy64.com”,”",”width=400,height=240,top=”+(screen.availHeight-240)/2+”,left=”+(screen.availWidth-400)/2);
</script>
============
<html>
<head>
<script language=”Livescript”>
function WinOpen() {
msg=open(“”,”DisplayWindow”,”toolbar=no,directories=no,menubar=no”);
msg.document.write(“<head><title>哈 罗!</title></head>”);
msg.document.write(“<center><h1>酷 毙 了!</h1><h2>这 是<b>Javascript</b>所 开 的 视 窗!</h2></center>”);
}
</script>
</head>
<body>
<form>
<input type=”button” name=”Button1″ value=”Push me” onclick=”WinOpen()”/>
</form>
</body>
</html>
==============
一、在下面的代码中,你只要单击打开一个窗口,即可链接到赛迪网。而当你想关闭时,只要单击一下即可关闭刚才打开的窗口。
  代码如下:
  <script language=”Javascript”>
  < !–
  function openclk() {
  another=open(‘http://yi.sy64.com,’NewWindow’);
  }
  function closeclk() {
  another.close();
  }
  //–>
  </script>
  <form>
  <input TYPE=”BUTTON” NAME=”open” value=”打开一个窗口” onClick=”openclk()”/>
  <br />
  <input TYPE=”BUTTON” NAME=”close” value=”关闭这个窗口” onClick=”closeclk()”/>
  </form>
  二、上面的代码也太静了,为何不来点动感呢?如果能给页面来个降落效果那该多好啊!
  代码如下:
  <script>
  function drop(n) {
  if(self.moveBy){
  self.moveBy (0,-900);
  for(i = n; i > 0; i–){
  self.moveBy(0,3);
  }
  for(j = 8; j > 0; j–){
  self.moveBy(0,j);
  self.moveBy(j,0);
  self.moveBy(0,-j);
  self.moveBy(-j,0);
  }
  }
  }
  </script>
  </body><body onLoad=”drop(300)”>
  三、讨厌很多网站总是按照默认窗口打开,如果你能随心所欲控制打开的窗口那该多好。
  代码如下:
  <script LANGUAGE=”Javascript”>
  < !– Begin
  function popupPage(l, t, w, h) {
  var windowprops = “location=no,scrollbars=no,menubars=no,toolbars=no,resizable=yes” +
  ”,left=” + l + “,top=” + t + “,width=” + w + “,height=” + h;
  var URL = “http://yi.sy64.com”;
  popup = window.open(URL,”MenuPopup”,windowprops);
  }
  // End –>
  </script>
  <table>
  <tr>
  <td>
  <form name=popupform>
  <pre>
  打开页面的参数<br />
  离开左边的距离: <input type=text name=left size=2 maxlength=4/> pixels
  离开右边的距离: <input type=text name=top size=2 maxlength=4/> pixels
  窗口的宽度: <input type=text name=width size=2 maxlength=4/> pixels
  窗口的高度: <input type=text name=height size=2 maxlength=4/> pixels
  </pre>
  <center>
  <input type=button value=”打开这个窗口!” onClick=”popupPage(this.form.left.value, this.form.top.value, this.form.width.value, this.form.height.value)”/>
  </center>
  </form>
  </td>
  </tr>
  </table>你只要在相对应的对话框中输入一个数值即可,将要打开的页面的窗口控制得很好。
44、页面的打开移动
把如下代码加入</body><body>区域中
<script LANGUAGE=”Javascript”>
<!– Begin
for (t = 2; t > 0; t–) {
for (x = 20; x > 0; x–) {
for (y = 10; y > 0; y–) {
parent.moveBy(0,-x);
}
}
for (x = 20; x > 0; x–) {
for (y = 10; y > 0; y–) {
parent.moveBy(0,x);
}
}
for (x = 20; x > 0; x–) {
for (y = 10; y > 0; y–) {
parent.moveBy(x,0);
}
}
for (x = 20; x > 0; x–) {
for (y = 10; y > 0; y–) {
parent.moveBy(-x,0);
}
}
}
//–>
// End –>
</script>
45、显示个人客户端机器的日期和时间
<script language=”Livescript”>
<!– Hiding
today = new Date()
document.write(“现 在 时 间 是: “,today.getHours(),”:”,today.getMinutes())
document.write(“<br>今 天 日 期 为: “, today.getMonth()+1,”/”,today.getDate(),”/”,today.getYear());
// end hiding contents –>
</script>
46、自动的为你每次产生最後修改的日期了:
<html>
<body>
This is a simple HTML- page.
<br />
Last changes:
<script language=”Livescript”>
<!– hide script from old browsers
document.write(document.lastModified)
// end hiding contents –>
</script>
</body>
</html>
47、不能为空和邮件地址的约束:
<html>
<head>
<script language=”Javascript”>
<!– Hide
function test1(form) {
if (form.text1.value == “”)
alert(“您 没 写 上 任 何 东 西, 请 再 输 入 一 次 !”)
else {
alert(“嗨 “+form.text1.value+”! 您 已 输 入 完 成 !”);
}
}
function test2(form) {
if (form.text2.value == “” ||
form.text2.value.indexOf(‘@’, 0) == -1)
alert(“这 不 是 正 确 的 e-mail address! 请 再 输 入 一 次 !”);
else alert(“您 已 输 入 完 成 !”);
}
// –>
</script>
</head>
<body>
<form name=”first”>
Enter your name:<br />
<input type=”text” name=”text1″/>
<input type=”button” name=”button1″ value=”输 入 测 试” onClick=”test1(this.form)”/>
<p>
Enter your e-mail address:<br />
<input type=”text” name=”text2″/>
<input type=”button” name=”button2″ value=”输 入 测 试” onClick=”test2(this.form)”/>
</p></form></body>
48、跑马灯
</html><html>
<head>
<script language=”Javascript”>
<!– Hide
var scrtxt=”怎麽样 ! 很酷吧 ! 您也可以试试.”+”Here goes your message the visitors to your page will “+”look at for hours in pure fascination…”;
var lentxt=scrtxt.length;
var width=100;
var pos=1-width;
function scroll() {
pos++;
var scroller=”";
if (pos==lentxt) {
pos=1-width;
}
if (pos&lt;0) {
for (var i=1; i<=Math.abs(pos); i++) {
scroller=scroller+” “;}
scroller=scroller+scrtxt.substring(0,width-i+1);
}
else {
scroller=scroller+scrtxt.substring(pos,width+pos);
}
window.status = scroller;
setTimeout(“scroll()”,150);
}
//–>
</script>
</head>
<body onLoad=”scroll();return true;”>
这里可显示您的网页 !
</body>
</html>
49、在网页中用按钮来控制前页,后页和主页的显示。
<html>
<body>
<form NAME=”buttonbar”>
<input TYPE=”button” VALUE=”Back” onClick=”history.back()”/>
<input TYPE=”button” VALUE=”JS- Home” onClick=”location=’script.html’”/>
<input TYPE=”button” VALUE=”Next” onCLick=”history.forward()”/>
</form>
</body>
</html>
50、查看某网址的源代码
把如下代码加入</body><body>区域中
<script>
function add()
{
var ress=document.forms[0].luxiaoqing.value
window.location=”view-source:”+ress;
}
</script>
输入要查看源代码的URL地址:
<form><input type=”text” name=”luxiaoqing” size=40 value=”http://”/></form>
<form><br />
<input type=”button” value=”查看源代码” onClick=add()/>
</form>
51、title显示日期
把如下代码加入</body><body>区域中:
<script language=”Javascript1.2″>
<!–hide
var isnMonth = new
Array(“1月”,”2月”,”3月”,”4月”,”5月”,”6月”,”7月”,”8月”,”9月”,”10月”,”11月”,”12月”);
var isnDay = new
Array(“星期日”,”星期一”,”星期二”,”星期三”,”星期四”,”星期五”,”星期六”,”星期日”);
today = new Date () ;
Year=today.getYear();
Date=today.getDate();
if (document.all)
document.title=”今天是: “+Year+”年”+isnMonth[today.getMonth()]+Date+”日”+isnDay[today.getDay()]
//–hide–>
</script>
52、显示所有链接
把如下代码加入</body><body>区域中
<script language=”Javascript1.2″>
<!–
function extractlinks(){
var links=document.all.tags(“A”)
var total=links.length
var win2=window.open(“”,”",”menubar,scrollbars,toolbar”)
win2.document.write(“<font size=’2′>一共有”+total+”个连接<br />”)
for (i=0;i<total ;i++){
win2.document.write(“<font size=’2′>”+links.outerHTML+”<br />”)
}
}
//–>
</total></script>
<input type=”button” onClick=”extractlinks()” value=”显示所有的连接”/>
53、回车键换行
把如下代码加入</body><body>区域中
<script type=”text/javascript”>
function handleEnter (field, event) {
var keyCode = event.keyCode ? event.keyCode : event.which ? event.which : event.charCode;
if (keyCode == 13) {
var i;
for (i = 0; i < field.form.elements.length; i++)
if (field == field.form.elements)
break;
i = (i + 1) % field.form.elements.length;
field.form.elements.focus();
return false;
}
else
return true;
}
</script>
<form>
<input type=”text” onkeypress=”return handleEnter(this, event)”/><br />
<input type=”text” onkeypress=”return handleEnter(this, event)”/><br />
<textarea>回车换行
54、确认后提交
把如下代码加入<body>区域中
<script LANGUAGE=”Javascript”>
<!–
function msg(){
if (confirm(“你确认要提交嘛!”))
document.lnman.submit()
}
//–>
</script>
<form name=”lnman” method=”post” action=”">
<p>
<input type=”text” name=”textfield” value=”确认后提交”/>
</p>
<p>
<input type=”button” name=”Submit” value=”提交” onclick=”msg();”/>
</p>
</form>
55、改变表格的内容
把如下代码加入</body><body>区域中
<script language=javascript>
var arr=new Array()
arr[0]=”一一一一一”;
arr[1]=”二二二二二”;
arr[2]=”三三三三三”;
</script>
<select onchange=”zz.cells[this.selectedIndex].innerHTML=arr[this.selectedIndex]“>
<option value=a>改变第一格</option>
<option value=a>改变第二格</option>
<option value=a>改变第三格</option>
</select>
<table id=zz border=1>
<tr height=20>
<td width=150>第一格</td>
<td width=150>第二格</td>
<td width=150>第三格</td>
</tr>
</table>
</body></textarea></form></script></body></meta></body></div></layer></div></span></div></layer></span></div></meta></link></body>

</code></blockquote>

40 个轻量级 JavaScript 库 (上)

流行的 JavaScript 库不胜枚举,jQuery, MooTools, Prototype, Dojo, YUI。这些 JavaScript 库功能丰富,加上它们的插件,几乎能胜任任何工作,然而这是有代价的,这些库往往导致你的网页尺寸臃肿。在某些场合,如果你只想完成特定的工作,可以使用一些功能更专一的轻量库,本文介绍了40个非常出色的轻量级 JavaScript 库。 Read the rest of this entry »

Facebook的特别之处是什么?

为什么在facebook交友会更容易?facebook与传统的BSP(Blog Service Provider)到底有什么不同?是因为它有横竖两个导航吗?是因为它有个主人信息的聚合页面吗? Facebook为什么成功?又有哪些不足?Facebook商业上的成功使得它混乱的设计成了皇帝的新装,即使觉得看不懂也不敢去说。让我们拨开网页上那些纷繁的视觉表现,来看看藏在网页背后骨架—信息构架(IA Information Architecture),我们将获得一个全新视角,这种种疑问将迎刃而解。

传统的博客服务提供商(Blog Service Provider,简称BSP),比如:Qzone、新浪博客、网易博客…他们提供的博客服务,不仅仅是为每一位注册用户提供了一个属于自己的blog空间,还有用于bloger间彼此交流的平台。也就是说,信息构架是:个人空间+社区平台。

“个人空间+社区平台”是什么样子的?
一个个的blog彼此独立存在,再由一个社区平台将这些blog聚合一起,通过内容聚合在一起。

左上角的第一个表示主人态,主人可以看到BSP提供的所有服务,其中的B、D、E是他自己已经使用了的。
而下面一个个的是其他人的blog,其他人的blog包含的内容各不相同,有的用了相册,有的用了日志,有的用了视频…目前多数的BSP都是简单的把ABCDEF都简单的呈现给客人,不管主人用不用。
图中右半部分是社区平台,以内容为维度,展示内容,进而展示用户。比如,A代表日志,社区平台上会有个日志栏目,其中展示出很多有意思的日志,要看这篇日志,就到达另外一个人的blog了。交流实现了,所谓平台,价值也就在于此。

Blog原本就是一个个独立的,有了BSP提供blog服务后,才出现了社区平台,让用户能更方便的找到其他人。不仅仅是自己写给别人看,更可以用方便的找到志同道合的人,让众多bloger形成一个社区。

这样的结构有好处:
1.结构清晰。这结构我一说,你就明白了。估计我不说,你也能明白。
2.扩建容易。这是针对BSP来说的。要添加一项新的服务,可以分成两个步骤来进行,在个人blog中提供功能是一步,在社区平台上提供交流是另外一步,如果开发资源有限,可以不必同时做。比如,要提供一个视频服务,可以先在个人空间中提供给每个用户上传、展示视频的功能,暂时社区平台上没有视频方面的聚合内容也没关系,等有精力了再做不迟。

这种“个人+社区平台”模式的缺点:
各个blog之间的沟通比较困难。每个blog都属于个人,要从一个blog进入另外一个blog有两条路:
1. 通过blog中的好友、留言作者名称。我在一个blog中留了言,阅读到这个留言的人就可以通过这个留言的作者名进入我的blog。
2. 页面最上面的类似“进入社区平台”的链接。
这两个渠道的能量都很有限。空间中的好友是主人自己添加的。这个空间主人要是人缘差,没好友,没人留言,那第一条路就没了。“进入社区平台”链接只是个链接,点之前啥都看不到,我干嘛要去点?点了能有啥有意思的?

上面说的这种是传统BSP的信息构架。搞清楚了这个我们再来看另外一种比较新鲜的构架—facebook、myspace…的构架。

facebook的构架和“个人+社区平台”有个显著区别:主人信息是打散到社区平台的各个栏目中,因为这个区别,我在这里姑且给这种构架起个名字—“一体式”。

来看看“一体式”的结构:

既然主人页面中有个“日志”,社区平台也有个“日志”,那就合并成一个好啦。“我自己”就没啦,全部的构架就只剩下一个按内容分类的结构了。因为主人的信息是打散到各个ABCD…栏目中,这就需要给主人一个自己有关所有自己的聚合页面—主人的首页。方便用户查看所有与自己有关的所有信息:

真是页面是这样的:

打开网站中的一个栏目,比如,打开C,会显示为:

真实的网页是这样的:

进入到某一个人的空间中,别人的这个空间也不再是一个独立的小网站了,而是只用右侧来显示某个人的信息。左侧的内容分类导航则固定不变:

真实的网页是这样的:

这种信息构架的好处:
优点一.我自己的信息和别人的信息联系的十分紧密,当我查看我的相册时,直接就看到了其他人相册的一些信息。要了解其他人不再需要跳到单独的社区平台上了。这显然增进了互相的交流,所以在类似facebook这样的网站交友更容易。

优点二.提供了专门给主人的主页,于是可以提供更多专门给主人看的信息:谁最近又上传了照片啦,谁要加我为好友啦,谁又和谁成为好友啦…东家长西家短,可以向主人唠叨很多八卦。这些信息显然也有助于用户之间的沟通。

“一体化”模式的缺点:
缺点一.展示其他人的空间信息变得很受局限。
只有右侧栏可以显示当前空间的内容。当前空间(某个客人空间)的信息不能再做页签式的导航了。也就是说,不能显示成下面这样:

因为在左侧已经出现一套ABCDEF了,再在右侧出现当前空间主人的ACD,就混了,“要看这个人的A栏目内容,到底要点哪个A?”
关于这个主人的信息有很多很多,又不能用页签式的导航,要展现这么多信息自然吃力。当前主人的空间的二级栏目就只能加个“返回首页”的链接了,象下面这样:

这种“返回首页”类型的导航没有明确的展示出当前页面在网站中的位置,用的多了,看着就比较晕了。

缺点二.给主人自己的导航比较混乱。
上面提到需要给主人一个首页,用于显示所有和他相关的信息。除此以外,主人还需要知道别人看自己会是个什么样子。Facebook就给这两个页面分别起名叫:home 和 profile :

看到的效果就是我有两个主页,一个是给我自己用的,另外一个是别人看到的样子。也就是,主人模式首页和客人模式首页。

主人模式或客人模式又有很多共同的功效,比如:有好友在我的相册里写了一条评论,我可以在 home页中查看到,点击后进入相册:

也可以在profile中主动点击进入相册发现这条新评论:

这两个主页再加上上面提到的“返回首页链接而不页签”,实在就是够乱的了。在这里面转经常感觉像是在酒吧中灌下若干喜力后找洗手间的情形:东撞西撞的一眼看到了“洗手间”的牌子走进去就对了。下次再去还是不知道洗手间在什么地方。

对比两类构架:
对比两类比较典型SNS的信息构架模式,可以看出,第一种“个人空间+社区平台”模式,结构简单,但交流不畅。在越来越强调用户间互动的大潮下,这样的结构显得心有余而力不足。第二种 “一体化”模式,个人信息与公共信息浑然一体,在用户交流方法提供了更多的引导,但也是因为这个“浑然一体”,使得导航起来比较痛苦,结构看上去混乱,用起来迷糊。我相信,即便是除去英文这个语言因素,也没有谁敢说自己一上来就能很顺手的使用这个网站,总是得要学一阵子,还不见得能学明白。

About Me

一个11年网龄的25岁小伙子。
2010终成夙愿
因为地震(5.12)未念完大学.
误打误撞进入了游戏圈。
关注范围包括:互联网产品,市场,运营,广告。
至今还一事无成。

搜索