Tag: Web Development
09 Jan 2017 16:55 +0000

和 Prism 可以和谐共处, 但升级至 Bootstrap 4 后, 它们之间会产生一点小小的样式冲突, 一些 token 会变得非常小, 因为 Bootstrap 加入了新的 class: .tag, 这是已经被 Prism 占用的 class, 造成了 Prism token 的字体变小 (75%), 还引起其他的一些样式变化.

See Detail


08 Jul 2020 17:05 +0000

22 Jun 2020 16:50 +0000

19 Oct 2018 22:22 +0000

Code Guide is a project for documenting standards for developing flexible, durable, and sustainable HTML and CSS. It comes from years of experience writing code on projects of all sizes. It's not the end-all be-all, but it's a start.

See Detail


10 Sep 2018 10:36 +0000

今天在 Vue 中尝试绑定 Lodash 防抖动函数 (debounce), 在传入闭包函数的时候遇到了一点问题, 其实是对箭头函数和引用传递的机制理解不够.

See Detail


09 May 2018 18:31 +0000

23 Apr 2018 18:04 +0000

18 Dec 2017 18:53 +0000

Vue 拷贝特定内容到剪切板有一个专门的库 vue-clipboard, 但是不太好用, 而且很简单的功能引入一个库代价太大, 可以自己用几句代码简单实现下.

See Detail


11 Dec 2017 01:41 +0000

工作当中设计师和程序员常常需要互相确认设计或切图的尺寸, 如果双方没有协调好, 沟通过程中很可能出现 "驴唇不对马嘴" 的情况. 无论设计师或程序员, 理解屏幕尺寸单位换算, 以及对方计算尺寸的方式都很有必要.

See Detail


01 Jul 2017 21:26 +0000

JavaScript 属于描述型脚本语言, 在运行时由浏览器进行动态解析和执行, 在此过程中有一些特殊的行为模式, 合格的 JavaScript 程序员应该对此有清楚的了解.1704

See Detail


18 Apr 2017 11:46 +0000

JavaScript 中,某些事件,如 'input','resize','scroll',可以在很短时间内频繁触发,如果把逻辑函数直接绑定到这些事件上,会严重影响运行性能,甚至造成更大的麻烦,比如把 ajax 请求直接绑定到 'input' 事件上,将在用户输入时产生频率很高的 ajax 请求,给服务器造成不必要的响应压力。

See Detail


18 Apr 2017 10:28 +0000

CSS: Difference between ^ and | selector:

Caret ^: selects elements where the value of the specified attribute starts with a certain value:

Pipe |: selects elements where the value of the specified attribute is either exactly the value or starts with the value immediately followed by -:

Difference between pipe (|) and caret (^) attribute selectors

See Detail


18 Apr 2017 08:54 +0000

当函数返回时,调用者能够拿到预期结果,则称该函数是 同步 (synchronous) 的,反之称该函数是 异步 (asynchronous) 的。就是说,在主线程内完成的任务是同步的,主线程外产生额外线程的任务是异步的。

See Detail


29 Mar 2017 00:08 +0000

因为.data()不会设置data-*的属性值. 尽管.data()获取的数据初始化自data-*属性, 但在添加和修改的过程中不会改变元素的data-*属性. 正确的做法是使用.attr()方法:

$('.div').attr("data-foo", "bar")

参考资料

JQuery .data() not working?

See Detail


03 Mar 2017 10:11 +0000

很多情况下需要向表单输入事件添加绑定, 监听的事件主要是 "input" 和 "change" 两个. 此二者在功能和行为上存在诸多不同.

See Detail


02 Mar 2017 17:49 +0000

浏览器缓存,也就是客户端缓存,既是网页性能优化里面静态资源相关优化的一大利器,也是无数web开发人员在工作过程不可避免的一大问题,所以在产品开发的时候我们总是想办法避免缓存产生,而在产品发布之时又在想策略管理缓存提升网页的访问速度。了解浏览器的缓存命中原理,是开发web应用的基础。

See Detail


01 Mar 2017 14:43 +0000

Author: Nicholas C. Zakas

我相当乐意花一整天的时间通过编程把一个任务实现自动化, 除非这个任务手动只需要 10 秒钟就能完成.

Douglas Adams, Last Chance to See

See Detail


28 Feb 2017 15:35 +0000

Author: Nicholas C. Zakas

数据是不应当影响指令的正常运行的. 精心设计的应用应当将关键数据从主要的源码中抽敦聘来, 这样我们修改源码时才能更加放心.

See Detail


28 Feb 2017 08:09 +0000

Author: Nicholas C. Zakas

编程实践是另外一类编程规范. 代码风格规范只关心代码的呈现, 而编程实践则关心编码的结果. 可以将编程实践看作是 "秘方" 一一它们指引开发者以某种方式编写代码, 这样做的结果是书籍的. 如果你使用过一些设计模式比如 MVC 中的观察者模式, 那么你已经对编程实践很熟悉了. 设计模式是编程实践的组成部分, 专用于解决和软件组织相关的特定问题.

See Detail


27 Feb 2017 21:46 +0000

Author: Nicholas C. Zakas

注释是代码中最常见的组成部分. 注释是另一种形式的文档, 也是程序员最后才舍得花时间去写的. 但是, 对于代码的总体可维护性而言, 注释是非常重要的一环.

See Detail


27 Feb 2017 15:56 +0000

CSS 有没有 "前一相邻元素" 选择器? 为什么有 "后一相邻元素" 选择器, 却没有 "前一相邻元素" 选择器? 这和 "级联样式表" 的定义有什么关联?

See Detail


27 Feb 2017 09:46 +0000

Author: Nicholas C. Zakas

由于前端工程师的成长道路和自成轨迹, 这让 (Web 前端技术) 这个专业看起来是如此的与众不同, 甚至诸如 Yahoo! 这种大公司里的很多前端工程师也多是靠自身野蛮生长, 我行我素地写着各种 hack! . 当这些 hacker 碰到了各种条条框框. 单兵作战再没了优势, 所有那些自觉成都和以自我为中心的人都不得不开始思考如何才能在团队环境中生存下来.

See Detail