分类目录归档:Javascript

用JS 重新造了个轮子,农历计算脚本,有详细的注释

工作中有时需要农历计算,之前从网上找了个JS版本的(摘自wannianli.htm,网上导出都是),直接调用就可以了,非常方便。有优点就有缺点,该版本文件有点大(20KB以上);有很多代码用不到;代码注释不够直白;理解其原理有点麻烦。

之前用过多次,对原理也不是很清楚,最近项目需要,重新造了一遍轮子。包含源码注释的文件控制在7KB以内,压缩后再3KB以内。 继续阅读

Promise的简单实现

ES6 原生提供了 Promise 对象,大大简化了 callback 的代码维护难度。使用promise对象之后可以使用一种链式调用的方式来组织代码;让代码更加的直观。

如果想在老浏览器中使用 Promise,需要使用第三方库。实际实现远离并不复杂,仅需要十几行代码,就能实现类似的效果(实际还是有点区别的)。

代码如下: 继续阅读

巧用 Bootstrap的 popover插件 实现表单校验提示

最近的项目,用Bootstrap比较多。浏览Bootstrap文档,发现 popover 插件特别适合做表单校验出错的提示。

因为使的非常频繁,最近把它封住下,做成 jQuery的插件。 通过 本插件,在 html标签中 定义好 data-vaild=”校验正则” data-errmsg=”错误信息即可”。为什么 要把 校验规则 写到 html 标签中呢?因为 我还用它做了 后台 的校验规则(后台没用Node,现在用的ASP,忙完专门再发文写下原理)。演示地址:http://www.miaoqiyuan.cn/products/vaild/index.html 继续阅读

angular.js 分页代码

之前写过多个分页程序,有ASP版本的,PHP版本的。现在在学习angular,使用angularjs 分页,基于 directive 实现,样式使用的 bootstrap,直接在 html代码中加入 标签即可调用。
完美的ASP分页脚本(http://www.miaoqiyuan.cn/p/asp-pageination)
PHP分页(页码)函数(http://www.miaoqiyuan.cn/p/php-yema-fenye)
分享两个ASP分页(页码)函数(http://www.miaoqiyuan.cn/p/asp-yema-fenye) 继续阅读

简单的JS加载器,可以支持angularjs

最近在用 angularjs 做一个项目,开发过程中没有问题,测试的时候,才发现他是个巨坑,在2G网络下,可与要等待几十秒才能显示出网页内容。

想到用加载器的方式(先输出一个简单的页面,提示等待中,已经完成 20%)尝试使用加载器的方式,加载完 angular 直接去找 控制器(控制器文件还没下载完),直接报错了。

找了半天没有合适的,自己写一个吧,尝试了很多方式 还是不行。遇到了很多坑后,最终还是 通过拼接html代码的方式实现了。最终实现的加载器代码如下, 继续阅读