随笔分类 - javascript相关
与js相关的知识
摘要:前言不知何时突然冒出“MEAN技术栈”这个新词,听起来很牛逼的样子,其实就是我们已经熟悉了的近两年在前端比较流行的技术,mongodb、express、angularjs、nodejs,由于这几项技术涵盖了从前端到后端再到数据库,可以用他们完整的开发一个web应用了,所以成了一个非常牛逼的组合,颇有...
阅读全文
摘要:开发一个内部功能时碰到的需求,要把json数据在页面上展示出来,平时浏览器会安装jsonView这样的扩展来看json数据,但是程序要用到的话该怎么办呢?今天在网上搜索的时候,发现了这个小技巧,分享一下。要用到的核心是JSON.stringify这个函数,没想到吧,平时我们只把它用来序列号json数...
阅读全文
摘要:前段时间写了两个移动端的日期选择插件:轻量级移动端日期选择器,本来是为特定的场景中使用的,结果有同学反应不够灵活和强大。虽然我的看法是移动端的界面要尽可能简洁,功能要尽可能简单,但是难免还是会有各种各样的场景,有时候确实需要同时选择年、月、日、时、分、秒,日期的格式要能配置,要能显示“上午 下午”.
阅读全文
摘要:我们经常会看到,一些站点在首次进入的时候会先显示一个进度条,等资源加载完毕后再呈现页面,大概像这样: 然后整个页面的操作就会非常流畅,因为之后没必要再等待加载资源了。尤其是在移动端,或者是页游中,这样做能避免页面出现白屏(等待加载图片),很大程度提升用户体验。那这种技术是如何实现的呢?其实...
阅读全文
摘要:在移动端进行日期选择想必困扰过不少小伙伴,在PC端我们比较丰富的选择,如jQueryUI的datepicker,但这些插件都比较臃肿,而且还要依赖一个同样臃肿的库。或许PC上可以忍受比较大的文件,网速相对快嘛。然而在移动端也面临同样的问题,想用一个日期选择器还得依赖一个庞大的UI库,如mobis...
阅读全文
摘要:写本篇文章的缘由是之前群里@墨尘发了一段js代码,如下: (!(~+[])+{})[--[~+""][+[]]*[~+[]] + ~~!+[]]+({}+[])[[~!+[]]*~+[]] 然后让大家运行,出来的结果让人有点出乎意料,请看: 太风骚了有木有!如果有人诋毁前端瞧不起js的...
阅读全文
摘要:在页面中动态追加html片段的时候,有时候动态添加的代码会含有 直接把它放在标签中,就会往这个标签中输出东西了。使用jQuery的html() 上面的方法说来说去,都不如jQuery简单,因为jQuery的html()方法内部已经做了处理,如果参数中含有标签,内部会使用eval和创建新节点的...
阅读全文
摘要:项目背景 刚刚参加完一个项目,背景:后端是用java,后端服务已经开发的差不多了,现在要通过web的方式对外提供服务,也就是B/S架构。后端专注做业务逻辑,不想在后端做页面渲染的事情,只向前端提供数据接口。于是协商后打算将前后端完全分离,页面上的所有数据都通过ajax向后端取,页面渲染的事情完全由...
阅读全文
摘要:handlebars相对来讲算一个轻量级、高性能的模板引擎,因其简单、直观、不污染HTML的特性,我个人特别喜欢。另一方面,handlebars作为一个logicless的模板,不支持特别复杂的表达式、语句,只内置了一些基本的语法,像if、each这些。可惜的是就连if都十分弱,只能判断值是否为...
阅读全文
摘要:伴随着今年10月底HTML5标准版的发布,未来使用H5的场景会越来越多,这是令web开发者欢欣鼓舞的事情。然而有一个现实我们不得不看清,那就是IE系列浏览器还占有一大部分市场份额,以IE8、9为主,windows8.1的用户已经用上了IE10/11,而考虑我国的国情,IE6、7依然存留不少。在我...
阅读全文
摘要:自神经猫风波之后,微信中的各种小游戏如雨后春笋般目不暇接,这种低成本,高效传播的案例很是受开发者青睐。作为一名前端,随手写个这样的小游戏出来应该算是必备技能吧。恰逢中秋节,部门决定上线一个小游戏,在微信里传播一下与用户互动互动。这任务自然落在了我头上。前段时间用DOM+CSS3写了个小游戏,在A...
阅读全文
摘要:前些日子看到了一则新闻,flappybird原作者将携新游戏SwingCopters来袭,准备再靠这款姊妹篇游戏引爆大众眼球。就是下面这个小游戏: 前者的传奇故事大家都有耳闻,至于这第二个游戏能否更加火爆那是后话了。不过我看了作者的宣传视频后,蠢蠢欲动,这么简单的小游戏我山寨一个网页版出...
阅读全文
摘要:都什么年代了,还自己写弹出层插件!是的,①自己写的自己好控制②可定制性高③兼容低版本IE 本插件有以下特性:样式分离,可定制,纯净无图片可自定义按钮及按钮的样式、点击事件可指定选择器选择页面元素的内容作为弹出层的内容,也可以指定url来异步加载单独页面可配置遮罩层、关闭按钮、按钮栏可配置拖动、...
阅读全文
摘要:★jQuery1.7.2下操作object元素报错jQuery1.7.2下,用$选择器操作object元素会报错:代码如下:$('object').hide();换用原生js就没事了:document.getElementsByTagName('object')[0].style.display =...
阅读全文
摘要:有时项目中会遇到需要拖动元素、拖拽调整元素大小的需求。大部分时候都不想自己写一遍,因为已经有很多现成的例子了。例如jqueryui提供的drag和resize。但是仅仅是为了这么小一个功能就引入一个库,真是有点划不来,性价比太低了撒。于是自己实现了一遍,写了两个通用函数,需要的时候直接把他们考到...
阅读全文
摘要:俗话说不作死就不会死,今天作死了一回,写了一个比较二逼的函数,遇到了同步Ajax引起的UI线程阻塞问题,在此记录一下。 事情起因是这样的,因为页面上有多个相似的异步请求动作,本着提高代码可重用性的原则,我封装了一个名为getData的函数,它接收不同参数,只负责获取数据,然后把数据return...
阅读全文
摘要:月初发布了HUploadify2.0版本,增加了文件的断点续传功能,得到了不少朋友的好评。本着按照Uploadify原样复制的原则,本次在一些朋友的建议中采纳了几点,做了一次较小的改动,定为2.1版本。所做的改动包括:1. 对外开放的方法增加settings。 uploadify有settings方法可调用,作用是动态设置上传插件的配置参数,如下:$('#file_upload').uploadify('settings','buttonText','BROWSE'); 当时觉得这个插件很少会动态去设置配置参数,所以就没实现这个接
阅读全文
摘要:年底了越来越懒散,AngularJs的学习落了一段时间,博客最近也没更新。惭愧~前段时间有试了一下用yeoman构建Angular项目,感觉学的差不多了想做个项目练练手,谁知遇到了一系列问题。yeoman是基于node.js的一套工具包,由于我一直在windows下编程,而且node.js对于windows环境的支持也在慢慢加强,所以想尝试在windows下用yeoman跟搭建一个项目。过程远比想象的坎坷多了,各种报错,各种搜资料解决问题,最终还是无法解决一些编译出错,以失败告终,转战Linux。在此也提醒大家如果想在windows下使用yeoman,还是谨慎为好! 今天来学习一下一直被...
阅读全文
摘要:原型、闭包、作用域等知识可以说是js中面试必考的东西,通过你理解的深度也就能衡量出你基本功是否扎实。今天来复习一下javascript的原型和继承,虽说是老生常谈的话题,但对于这些知识,自己亲手写一遍能更加透彻的理解,能用自己的话说明白了,也就真正理解了。原型是什么? 在javascript中,通过关键字new调用构造器函数或者使用字面量声明,我们可以得到一个对象实例。每个对象实例内部都持有一个指针,指向一个普通的对象,这个普通的对象就是原型,这是天生的。为什么说它是普通的对象呢?因为它确实没什么特别的地方,同样也是某个构造器函数的一个实例,这个构造器可以是Object,可以是Array...
阅读全文
摘要:之前仿造uploadify写了一个HTML5版的文件上传插件,没看过的朋友可以点此先看一下~得到了不少朋友的好评,我自己也用在了项目中,不论是用户头像上传,还是各种媒体文件的上传,以及各种个性的业务需求,都能得到满足。小小开心了一把。 但无论插件再怎么灵活,也难以应付所有的需求,比如,你要上传一个2G的文件。以现在我们的网速,恐怕再快也得传半小时。要命的是,如果你在上传到90%的时候不小心关掉了浏览器,或者是手一抖摁了F5,完了,一切还得从头再来。这种用户体验简直太糟糕了。所以,断点续传就十分有必要了。什么是续传我就不解释了,用QQ传文件这么多年,大家都见过了。 这里要说的是断点续传都...
阅读全文