作者:Lightning@小宝
发布时间:February 24, 2010
分类:JavaScript学习笔记
No Comments
先看下代码:
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<div id="show"></div>
<hr style="margin:50px 0px;"/>
<script>
function T(id){return document.getElementById(id);}
var show = window.show = T('show');
window.onload = function(){
T('te').onclick = function(e){
// var e = e||window.event;
// var _this = e.srcElement ? e.srcElement : e.target;
show.innerHTML += ' click ';
};
// T('te').onmouseover = function(){alert('over');}
// T('te').onmouseout = function(){alert('out');}
show.innerHTML = 'start: ';
T('te').onmousedown = function(){show.innerHTML += ' down ';}
T('te').onmouseup = function(){show.innerHTML += ' up ';}
}
</script>
<a id="te" href="javascript:;" style="border:1px solid red;padding:10px;">aaaaaaaaaaaaaaaaaaaaaaaa</a>
</body>
</html>
事件响应顺序为: mousedown -> mouseup -> click ; 有些情况可使用mousedown 替代 click 已减少事件响应事件!
作者:Lightning@小宝
发布时间:February 17, 2010
分类:生活 & 职场
No Comments
价值观是指一个人对周围的客观事物(包括人、事、物)的意义、重要性的总评价和总看法。像这种对诸事物的看法和评价在心目中的主次、轻重的排列次序,就是价值观体系。价值观和价值观体系是决定人的行为的心理基础。
价值观的特点
价值观具有相对的稳定性和持久性。在特定的时间、地点、条件下,人们的价值观总是相对稳定和持久的。比如,对某种事物的好坏总有一个看法和评价,在条件不变的情况下这种看法不会改变。但是,随着人们的经济地位的改变,以及人生观和世界观的改变,这种价值观也会随之改变。这就是说价值观也处于发展变化之中。
价值观取决于人生观和世界观
价值观取决于人生观和世界观。一个人的价值观是从出生开始,在家庭和社会的影响下,逐步形成的。一个人所处的社会生产方式及其所处的经济地位,对其价值观的形成有决定性的影响。当然,报刊、电视和广播等宣传的观点以及父母、老师、朋友和公众名人的观点与行为,对一个人的价值观也有不可忽视的
价值观的影响效应
价值观不仅影响个人的行为,还影响着群体行为和整个组织行为。在同一客观条件下,对于同一个事物,由于人们的价值观不同,就会产生不同的行为。在同一个单位中,有人注重工作成就,有人看重金钱报酬,也有人重视地位权力,这就是因为他们的价值观不同。同一个规章制度,如果两个人的价值观相反,那么就会采取完全相反的行为,将对组织目标的实现起着完全不同的作用。
价值观的类型
1、理性价值观 它是以知识和真理为中心的价值观。具有理性价值的人把追求真理看的高于一切。
2、美的价值观 它是以外形协调和匀称为中心的价值观,他们把美和协调看的比什么都重要。
3、政治性价值观 它是以权力地位为中心的价值观,这一类型的人把权力和地位看的最有价值。
4、社会性价值观 它是以群体和他人为中心的价值观,把为群体、他人服务认为是最有价值的。
5、经济性价值观 它以有效和实惠为中心的价值观。认为世界上的一切,实惠的就是最有价值的。
6、宗教性价值观,它以信仰为中心的价值观。认为信仰是人生最有价值的。
兴 趣
兴趣的概念
兴趣是对于事物特殊的认识倾向,它是一种心理活动,当发展成为爱好时,就成为一个人的较长久而相对稳定的行为倾向,影响着人们能力的发挥。
兴趣和爱好是积极性的来源,它是以认识和探索某种事物的需要为基础,是推动人们认识事物、探求事物发展规律的一种动力。是人们在学习、工作等活动中最活跃的因素。有了对某项事物的兴趣,就能在行为中产生极大的积极性。
兴趣作为个体进行成就事业活动的基础,是发挥和发展其创造能力的心理推动力之一,可以激发个体进行创造活动的内部动机,充分发挥潜能的作用,使其感知力敏锐,创造性思维活跃,想象丰富,从而提高事业成功的效率。同时兴趣能激发个体强烈的创造热情,增强克服困难的信心和决心。
兴趣的作用
兴趣的动力作用 兴趣是推动人们进行求知活动和学习的重要的心理因素,它能使人集中精力,积极愉快地从事某种活动。凡是符合自己的兴趣的活动,都容易提高人的积极性。
兴趣的开发作用 兴趣是开发潜能的钥匙,一些学者曾经说过:所有智力方面的工作都要依赖于兴趣。研究表明,兴趣比智力更能促进学生努力学习,提高学习成绩。
强烈而稳定的兴趣是从事活动、发展才能的重要保证。
兴趣的培养
1、广泛兴趣的培养 具有广泛兴趣的人,就会经常注意多方面的新问题,并努力去钻研这些问题,从而大大增加各方面的知识经验。
2、稳定兴趣的培养 在兴趣爱好的基础上,持久性和稳定性是至关重要的。兴趣的持久和稳定可以推动深入钻研问题,进行创造性活动。
3、好奇心的培养 有人认为,好奇性和求知欲是使一个人走向成功的必由之路。在实际生活中,强烈好奇的人就能更多地学习和掌握各种知识,成功的概率也更大
态度
态度是个体对客观事物所持有的 一种持久而一致的心理和行为倾向
态度不是行为的本身,只是一种心理和行为的倾向。
态度必须有其对象。态度即是对什么的态度,这个什么对象可能是人 、工作、物等。
态度有一致性和持久性。
态度是由三种成分组成:
第一,认知成分,包括个人对人、工作和物的了解。
第二,情感成分,包括个人对人、工作、物的好恶、带有感情的倾向。
第三、行为成分,包括个人对人、工作和物的实际反应或行动
态度有压力,具有压迫性。态度总是指向并倾注于某个对象,因此,态度给对方造成心理压力
态度是可以改变的
1、个人对某种对象(人、工作或物)本无所谓爱好或讨厌的不同态度,只是后来在家庭、学校或社会环境中经由直接的或间接的学习而得到的体验,才对某人或某事产生了正向或负向的态度。
2、个人对某种对象已经有了好恶的态度,后来经由直接或间接学习改变了原有的态度。
作者:Lightning@小宝
发布时间:February 13, 2010
分类:JavaScript学习笔记
No Comments
对于document.compatMode,很多朋友可能都根我一样很少接触,知道他的存在却不清楚他的用途。今天在ext中看到 document.compatMode的使用,感觉这个对于我们开发兼容性的web页面还是很有帮助,我们都知道,IE对盒模型的渲染在 Standards Mode和Quirks Mode是有很大差别的,在Standards Mode下对于盒模型的解释和其他的标准浏览器是一样,但在Quirks Mode模式下则有很大差别,而在不声明Doctype的情况下,IE默认又是Quirks Mode。所以为兼容性考虑,我们可能需要获取当前的文档渲染方式。
document.compatMode正好派上用场,它有两种可能的返回值:BackCompat和CSS1Compat,对其解释如下:
BackCompat Standards-compliant mode is not switched on. (Quirks Mode)
CSS1Compat Standards-compliant mode is switched on. (Standards Mode)
在实际的项目中,我们还需要在获取浏览是否IE,这样就可以得到IE的渲染模式了。在Ext中的代码:isBorderBox=isIE&&!isStrict。
当文档有了标准声明时, document.compatMode 的值就等于 "CSS1compat", 因此, 我们可以根据 document.compatMode 的值来判断文档是否加了标准声明
var height = document.compatMode=="CSS1Compat" ? document.documentElement.clientHeight : document.body.clientHeight;
作者:Lightning@小宝
发布时间:February 13, 2010
分类:生活 & 职场
No Comments
如果一个男人,把自己超过三分之一的总收入,用在了你身上,那么姑且请相信,这个男人爱你。哪怕他在演戏。要考虑,他的实际收入。他要消费,他要储蓄,他要应酬,能花三分之一收入在你身上,那就是真的。
如果一个女人,把自己超过三分之一的时间,用在了你身上,那么请姑且相信,这个女人爱你。哪怕,她在演戏,她还在和其他男人暧昧,她还在和其他男人选择和被选择的演戏,她还在挂,还在挑,还在选。
如果男人真心欺骗,如果女人真心演戏,那么一切就是真的。女人不要说,你没有遇到你想遇到的人,你想嫁的人,如果你的容貌身材姿色收入家庭条件出生没有发生改变的话,按照常理和规律,你就应该和现在的人在一起。男人不要说,等我有了钱,等我成功了,等我有了权,如果你的相貌身材收入家庭姿色没有发生根本转变的话按照常理和规律,你就应该和现在的人在一起。你现在能遇到的,能交往的,就是你可以找到的人。所以,你不要想以后怎样,以后是以后的事情。
现在,就是现在。
没有多少男人会泡MM了,这个年头,男人负担太重,活得太累。所以,即便一个是想泡你,他也是真心在泡你。如果真是为了性,为了身体,这个年代可以解决的途径和方式很多,直接迅速廉价。
没有多少女人会真心在男人身上花时间了,甚至奉献青春和身体,现在女人都功利,现实,如果你不是百万千万富翁,就别以为女人是想你的钱财。何况这个年代,女人想赚钱,途径很多,方法很多,直接迅速快捷。
所以,泡你的人,和陪你的人,都是在真心的逢场作戏,至少他们还相信爱情,还期待感情,还很纯真,还很善良。
那些为你赶路,为你计划,为你安排,为你消费,为你安排的男人,请你珍惜。也许他们并不富裕,但是甘愿为你花费一周乃至数周的薪水,博取你一笑和彼此的开心快乐,那么他是爱你的,他是一个有道德的人,他演技高超。那些为你化妆,为你精心准备服饰,为你推掉应酬约会,在黄金时间和重大节假日陪你的女人,请你珍惜。也许她们并不国色天香,品味非凡,气质高雅,但是甘愿在人生最宝贵的时间,一年最郑重和值得纪念的日子,陪伴你,和你在一起,让你不寂寞,让彼此愉悦,相信感情和彼此温暖,那么她是爱你的,因为女人的青春最宝贵,一去不复返,她成功欺骗了你,欺骗了自己,丧失了机会。
也许,你不相信爱情,也许,你不能再爱,也许你觉得世界庸俗,也许,你觉得没有什么可以相信。那么请相信一切都是真的。那个男人深夜里给你发来关心和问候,在很多时间,牵挂着你,哪怕他在莺莺燕燕的包围里,只要他还记得你。
也许,你觉得这个世界物质,这个世界残酷,这个世界没有真爱,这个世界虚伪,这个人生虚幻,那么请相信一切都是真的。那个女人为了你玩弄许多花样,谈论起自己很多男人追逐,很抢手,谈论自己过去有很多有钱人垂涎,谈论自己的家常生活,甚至只是需要一件嫁衣。哪怕,她还在左顾右盼,还在瞻前顾后,只要她还在哄骗你。
那么,请认真地逢场作戏。请善待那个真实欺骗你的人。请珍惜为你演戏的人。哪怕她的骗术拙劣,哪怕他的演戏低劣。请相信,他是真的。至少当时是真的,是因为他相信感情很好,爱情很美好。
至于以后,以后谁也不知道。也许他真的腰缠万贯,在依红偎翠时,仍然忘不了你,舍不得你,或者你是他的发妻,你永远是NO1,是第一位,是同患难的,是可以欺骗他一生的女人。也许你以后一文不名,穷困潦倒,众生无望,但是有一个女人,会围绕你身边,不离不弃,因为你是她的丈夫,你永远是归宿,你演技高超,是可以和她一生做对手的那个人。
所以,欺骗是好的,只要彼此相信,心照不宣,就没有问题。所以,演戏是好的,只要你们,彼此投入,人生不过百年,幕起幕落而已。
作者:Lightning@小宝
发布时间:January 23, 2010
分类:web服务器方向
No Comments
1、判断手机用户
一般通过User-Agent来判断,从网上抄一抄,那些列出的都不错,我的配置里加上了Java、curl和Wget,方便调试和其它内部项目的抓取。
因为现在很多手机网关没有发送User-Agent,所以大部分手机发送的User-Agent到了网关就被过滤掉了,相当于是空值。经过抽样调查,User-Agent为空且为手机用户比例比较大。有部分User-Agent为空的是一些蜘蛛或垃圾程序的造访,这些垃圾流量并不那么重要。希望手机网关将来有相应的标准,不要发送空的User-Agent,就是发送一个字母也好啊。
如果应用有一个独立域名,也未必要做手机判断。譬如新浪有独立域名且深入人心,那它做不做跳转无关紧要。
nginx配置用穷举方式罗列各类手机User-Agent并把空User-Agent也转到手机应用里,非这些情况,则跳到帮助页面。
set $ismob 0;
if ( $http_user_agent ~ "(MIDP)|(WAP)|(UP.Browser)|(Smartphone)|(Obigo)|(Mobile)|(AU.Browser)|(wxd.Mms)|(WxdB.Browser)|(CLDC)|(UP.Link)|(KM.Browser)|(UCWEB)|(SEMC\-Browser)|(Mini)|(Symbian)|(Palm)|(Nokia)|(Panasonic)|(MOT\-)|(SonyEricsson)|(NEC\-)|(Alcatel)|(Ericsson)|(BENQ)|(BenQ)|(Amoisonic)|(Amoi\-)|(Capitel)|(PHILIPS)|(SAMSUNG)|(Lenovo)|(Mitsu)|(Motorola)|(SHARP)|(WAPPER)|(LG\-)|(LG/)|(EG900)|(CECT)|(Compal)|(kejian)|(Bird)|(BIRD)|(G900/V1.0)|(Arima)|(CTL)|(TDG)|(Daxian)|(DAXIAN)|(DBTEL)|(Eastcom)|(EASTCOM)|(PANTECH)|(Dopod)|(Haier)|(HAIER)|(KONKA)|(KEJIAN)|(LENOVO)|(Soutec)|(SOUTEC)|(SAGEM)|(SEC\-)|(SED\-)|(EMOL\-)|(INNO55)|(ZTE)|(iPhone)|(Android)|(Windows CE)|(Wget)|(Java)|(curl)|(Opera)" )
{
set $ismob 1;
proxy_pass http://m.sudone.com;
}
if ( $http_user_agent ~ ^$ )
{
set $ismob 1;
proxy_pass http://m.sudone.com;
}
if ( $ismob = 0 )
{
rewrite "^.*$" http://help.m.sudone.com/ permanent;
}
另一种配置方法:可以利用nginx的browser模块配置,参考:
http://www.daxi8.cn/index.php/archives/253/
注意:使用上面的正则表达式的办法要求nginx版本为0.7.43或以下,0.7.44版到0.8版都会有问题。
2、Content-Type
手机浏览器和普通电脑访问页面有所不同,绝大多数手机不支持text/html这种Content-Type格式。在web服务方面,除了要做出合适手机浏览的页面,另外一个重要的事情就是要把Content-Type弄对了。一般手机使用的是text/vnd.wap.wml和application/xhtml+xml,听说text/vnd.wap.wml是老式手机专用,application/xhtml+xml是3g标准指定的Content-Type,另外charset需要指明为UTF-8。
所以Content-Type就应像如下:
Content-Type: application/xhtml+xml; charset=UTF-8
这样就对了。
对于动态页面,Content-Type可以在程序里设定。
譬如php:
header("Content-Type: application/xhtml+xml; charset=UTF-8")
jsp的话,把顶头的page改了就好。
动态程序里的设定,到了nginx上默认会继承,所以不用太多考虑。nginx要做的一个是静态页面,另一个是302跳转。
静态页面的Content-Type改起来不麻烦,修改mime.types:
application/xhtml+xml html htm shtml;
application/xhtml+xml xml;
把需要的扩展名对应的类型改一改就好了。然后在nginx.conf里指定charset UTF-8;并加上charset_types text/vnd.wap.wml;和charset_types application/xhtml+xml;,charset_types这个指令在0.6版的nginx下是没有的,因此需要用0.7版,一般用的是0.7.43版。
麻烦的是301和302跳转,nginx中使用rewrite的redirect和permanent跳转的时候,Content-Type怎么改都会是text/html,使用add_header,Content-Type变成了两行,没能达成目的。用代理到动态程序固然行,但性能和稳定性又成了问题。最后查阅了nginx源码,发现这个text/html是写死的……
我调试的这个nginx是0.7.30版的,文件:
vi ./src/http/ngx_http_special_response.c
568 //r->headers_out.content_type_len = sizeof("text/html") - 1;
569 //r->headers_out.content_type.len = sizeof("text/html") - 1;
570 //r->headers_out.content_type.data = (u_char *) "text/html";
把568 569 570这三行代码注释掉,就可以让nginx跳转时不发送Content-Type,我发现在电脑的IE/FF浏览器上没有Content-Type也能正常跳转。
当然,为了严谨一些,写上Content-Type吧,现在可以用add_header定义:
add_header Content-Type "text/html";
手机的就是:
add_header Content-Type "application/xhtml+xml";
3、缓存
如果前端不是nginx,而是squid缓存,页面或是跳转都有可能被缓存住,造成访问问题,这时需要利用Vary这个header。查看网页的response header一般都有Vary头(服务器支持压缩的都有),意思是说squid要把客户端传来的某个头区别对待,譬如Vary:Accept-Encoding,客户端发来Accept-Encoding:gzip(MSIE), deflate时squid会为gzip, deflate做一个存档;如果客户端没发来Accept-Encoding这个头(wget),squid又会为无Accept-Encoding做另一个存档;这两个存档的内容是不一样的,gzip, deflate的是压缩后的内容,一堆乱码,无Accept-Encoding的则是网页源码。
知道了Vary的原理,剩下的事就容易了,在网页输出时加上Vary:User-Agent,意味着squid要为每一种User-Agent存一个存档,nginx里这样配置即可:
add_header Vary User-Agent;
这时网页的response header会有两行Vary:
Vary:Accept-Encoding;
Vary:User-Agent;
这倒无伤大雅,能正常工作。
因为目前User-Agent被各种改装的浏览器改来改去,所以版本特多,这会在squid上造成很多的存档,穿透也会相应增加,所以要仔细监控。
4、内核配置
在nginx特别是做代理的机器上,通常系统管理员都会把这两个内核参数设为1:
/proc/sys/net/ipv4/tcp_tw_recycle(net.ipv4.tcp_tw_recycle)= 1
/proc/sys/net/ipv4/tcp_tw_reuse(net.ipv4.tcp_tw_reuse)= 1
但这个配置会导致手机用CMWAP访问时出问题,因此要将这两个参数设为0。