随笔分类 - JavaScript
摘要:element jQuery JS $(elem).width() border-box: elem.offsetWidth - padding - border content-box: elem.offsetWidth - padding $(elem).innerWidth() elem.cl
阅读全文
摘要:写这篇文章的目的,一方面是介绍一下自己编写的模块化 DOM 库 domq.js,另一方面是希望大家对 jQuery 有一个正确的认识,即使 jQuery 已经逐渐退出历史舞台,但是它的 API 将会以另外一种形式存在下去。 GitHub: "https://github.com/nzbin/domq
阅读全文
摘要:注意事项 使用 JS 实现复制功能并不是很难,但是有几个需要注意的地方。 首先文本只有选中才可以复制,所以简单的做法就是创建一个隐藏的 ,然后绑定需要复制的文本。 另外如果将 设置为 或者 则无法选中文本,也就无法复制,可以设置 来隐藏文本域。 或者动态创建 移动端禁止键盘弹出 在 iOS 中 聚焦
阅读全文
摘要:关于螺旋矩阵 这是我曾经遇到过的面试题,在 LeetCode 上找到了题目的原型,难度中等。题目描述如下: 给定一个包含 m x n 个元素的矩阵(m 行, n 列),请按照顺时针螺旋顺序,返回矩阵中的所有元素。 示例 1: 示例 2: 解题思路 这是一道难度中等的题目,但是第一次看到题目时还是有一
阅读全文
摘要:前言 我在之前写过关于 JS 拖拽的文章,实现方式和网上能搜到的方法大致相同,别无二致,但是在一次偶然的测试中发现,这种绑定事件的方式可能会和其它的拖拽事件产生冲突,由此产生了对于事件绑定的思考。本文主要介绍解决这种冲突的方法,其实就是事件绑定的时机问题。 问题来源 这个问题是在类似如下 CodeP
阅读全文
摘要:序言:首先,这是一篇学习 SVG 及 JS 动画不可多得的优秀文章。我非常喜欢 Ana Tudor 写的教程。在她的教程中有大量使用 SVG 制作的图解以及实时交互 DEMO,可以说教程的所有细枝末节都可以成为学习 SVG 以及 JS 画图的资料。另一方面,这篇教程也非常枯燥,因为教程的主要篇幅是关
阅读全文
摘要:前言 关于讲解 JS 的拖拽功能的文章数不胜数,我确实没有必要大费周章再写一篇重复的文章来吸引眼球。本文的重点是讲解如何在某些特定的元素上禁止拖拽。这是我在编写插件时遇到的问题,其实很多插件的拖拽功能并没有处理这些细节,经过翻阅 jquery ui 的源码才找到答案。 拖拽实现 关于拖拽功能不再啰嗦
阅读全文
摘要:前言 最近在写插件的过程中,需要使用 JS 判断是否有滚动条,搜了一下,大致方法都差不多,但都有些啰嗦,代码不够简洁。最终通过参考不同方法,写了一个比较简单的方法。在判断滚动条的同时也需要计算滚动条的宽度,通过本篇文章一并与大家分享。 为什么要判断滚动条 判断滚动条的需求在弹窗插件中用的较多,因为弹
阅读全文
摘要:关于排序算法的问题可以在网上搜到一大堆,但是纯 JS 版比较零散,之前面试的时候特意整理了一遍,附带排序效率比较。
阅读全文
摘要:金钱格式检验属于很普通的需求,记得工作中第一次遇到这个需求的时候,还不太会写正则表达式,搜到了一个类似的解决方案,看着正则的文档改成了自己需要的形式。 但是用户的输入操作是任意的,只是显示提示信息,这种方式虽然可以满足要求,但是感觉不友好。 其实移动端的很多应用在输入金钱时都是屏蔽错误输入,只能输入
阅读全文
摘要:生成相邻不重复随机数是之前抽奖插件的遗留问题,在之前的文章中已经简单说过,但没有更好的解决方案。经过一个多月的修改,抽奖插件已经趋于完善,在此分享一下这个问题的解决方法。以下是最初的方法,但是会出现一个单独的全局变量,整体而言稍显多余,不算完美。 为了避免多余的全局变量,需要使用立即执行函数以及闭包
阅读全文
摘要:我在写插件时用到了 onresize 事件,在反复地测试后发现该事件在 Chrome 及 Opera(内核基本与 Chrome 相同,以下统称 Chrome)浏览器打开时就会执行,这种情况也许不能算作 bug 吧,估计他们的工程师认为浏览器打开时也算窗口发生了变化。解决问题之前我搜索了相关内容,确实
阅读全文
摘要:这是昨天面试时碰到的一道算法题:任意数分三组,使得每组的和尽量相等(感谢博友提供的关于该问题的相关资料 划分问题)。由于时间仓促,加之面试时头昏脑涨,这道题没做出来甚至没有给出思路,这让我多少有些遗憾和不甘。因为最近接触算法的东西较多而且本身对算法感兴趣,所以回家之后绞尽脑汁想把这题做出来。其实刚看
阅读全文
摘要:这是我在面试大公司时碰到的一个笔试题,当时自己云里雾里的胡写了一番,回头也曾思考过,最终没实现也就不了了之了。 昨天看到有网友说面试中也碰到过这个问题,我就重新思考了这个问题的实现方法。 对于想进大公司的童鞋,我想多说两句,基础知识真的很关键。平时在工作中也深刻体会到,没有扎实的基础知识,简单问题容
阅读全文
摘要:原文:Pixel accurate collision detection with Javascript and Canvas 译者:nzbin 我正在开发一个需要再次使用碰撞检测的游戏。我通常会使用简单高效的盒模型碰撞检测。盒子模型的主要原则就是把所有的物体都抽象成正方形,如果两个正方形有重叠,
阅读全文
摘要:原文:immediately-invoked-function-expression 译者:nzbin 也许你还没有注意到,我是一个对术语比较坚持的人。因此,在听到很多次比较流行却容易产生误导的 JavaScript 术语“自执行匿名函数”之后,最终我决定把我的想法写成一篇文章。 为了提供关于这一模
阅读全文