Html 5中自定义data-*特性 Html 5中自定义data-*特性 Html 5中支持用户自定义的data-*特性,它们在UI是不可见的。例如data-length,它可以附加在input的标签上。更加具体信息可参考W3C Html 5 data-说明书有这么一段描述:Custom data attributes are intended to store custom data private t
DOM的基本操作 DOM含义:DOM是文档对象模型(Document Object Model,是基于浏览器编程的一套API接口,是W3C出台的推荐标准。其赋予了JS操作节点的能力。当网页被加载时,浏览器就会创建页面的文档对象模型。节点:根据 W3C 的 HTML DOM 标准,HTML 文档中的所有内容都是节点:1、整个文档时一个文档节点。2、每个HTML元素是元素节点。3、HTML元素内的文本是
module——import命令(笔记) 1、 再使用export暴露某个接口后,其他JS文件就可以通过import命令加载这个模块。e.g//main.jsimport {firstName,lastName,year} from './profile';function setName(element) { element.textContent = firstName + ' ' + lastName;}
ES6的module语法--export 历史上,JavaScript 一直没有模块(module)体系,无法将一个大程序拆分成互相依赖的小文件,再用简单的方法拼装起来。其他语言都有这项功能,比如 Ruby 的require、Python 的import,甚至就连 CSS 都有@import,但是 JavaScript 任何这方面的支持都没有,这对开发大型的、复杂的项目形成了巨大障碍。在 ES6 之前,社区制定了一些模块加载方
JS中数组去重问题 JS中数组去重问题 面试前端必须准备的一个问题:怎样去掉Javascript的Array的重复项。据我所知,百度、腾讯、盛大等都在面试里出过这个题目。 这个问题看起来简单,但是其实暗藏杀机。 考的不仅仅是实现这个功能,更能看出你对计算机程序执行的深入理解。 我总共想出了三种算法来实现这个目的:Array.prototype.unique1 = f
js中几种实用的跨域方法原理详解 js中几种实用的跨域方法原理详解这里说的js跨域是指通过js在不同的域之间进行数据传输或通信,比如用ajax向一个不同的域请求数据,或者通过js获取页面中不同域的框架中(iframe)的数据。只要协议、域名、端口有任何一个不同,都被当作是不同的域。下表给出了相对http://store.company.com/dir/page.html同源检测的结果:要解决跨域的问题,我们可以
javascript 数组以及对象的深拷贝的方法 javascript 数组以及对象的深拷贝(复制数组或复制对象)的方法前言在js中,数组和对象的复制如果使用=号来进行复制,那只是浅拷贝。如下图演示: 如上,arr的修改,会影响arr2的值,这显然在绝大多数情况下,并不是我们所需要的结果。 因此,数组以及对象的深拷贝就是JavaScript的一个基本功了。数组的深拷贝条条大道通罗马,实现数组的深拷贝,
前端性能优化 代码层面:避免使用css表达式,避免使用高级选择器,通配选择器。缓存利用:缓存Ajax,使用CDN,使用外部js和css文件以便缓- 存,添加Expires头,服务端配置Etag,减少DNS查找等请求数量:合并样式和脚本,使用css图片精灵,初始首屏之外的图片资源按需加载,静态资源延迟加载。请求带宽:压缩文件,开启GZIP,用 hash-table 来优化查找少用全局变量用 innerH
优雅降级与渐进增强 .transition{ /*渐进增强写法*/ -webkit-transition: all .5s; -moz-transition: all .5s; -o-transition: all .5s; transition: all .5s; }.transition{ /*优雅降级*/ transition: all .5s;
jQuery event.target属性 jQuery event.target 属性定义和用法 event.target 属性返回哪个 DOM 元素触发了事件。 这对比较 event.target 和 this 是非常有用的,以便判断事件是否因事件冒泡被处理。参数 描述 event 必需。event 参数来自事件绑定函数。实例 返回哪个 DOM 元素触发了事件:$("p, button, h1").click(fu
计算机网络——常见HTTP状态码 100, client应该继续发送请求,即继续。101, server通知client修改协议,也就说,client需要采用新的协议版本去访问 server。200, 请求已成功。200 ~ 207300 Multiple Choices 如果请求一个指向多个资源的URL时,会返回这个状态码,比如某个服务器上有某个HTML文件的中文和英文版本。301永久重定向302临时重定向,HTTP1
深入理解BFC和Margin Collapse BFC的理解与应用首先我们来看看w3c规范对BFC的解释,其实对于这种概念的学习上,我们总是建议首先寻找官方的定义,因为原则上来说官方的才是最权威和正确的,而且还比较详细,千万不要因为看到英文就畏惧不前。什么是BFC(Block formatting contexts)w3c规范中的BFC定义:浮动元素和绝对定位元素,非块级盒子的块级容器(例如 inline-blo
AJAX知识整理 知识百科AJAX = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML)。AJAX 不是新的编程语言,而是一种使用现有标准的新方法。AJAX 最大的优点是在不重新加载整个页面的情况下,可以与服务器交换数据并更新部分网页内容。AJAX 不需要任何浏览器插件,但需要用户允许JavaScript在浏览器上执行。学前准备HTML 和 CSS
CSS3 filter属性 CSS3 filter(滤镜) 属性定义和使用filter 属性定义了元素(通常是)的可视效果(例如:模糊与饱和度)。默认值:none继承:no动画支持:是。详细可查阅 CSS 动画版本:CSS3JavaScript 语法:object.style.Web
谁说 JavaScript 简单的 英文:Aurélien Hervé 译文:众成翻译/msmailcode这里有一些 Javascript初学者应该知道的技巧和陷阱。如果你已经是专家了,顺便温习一下。Javascript也只不过是一种编程语言。怎么可能出错嘛?1. 你有没有尝试给一组数字排序?Javascript 的sort()函数在默认
css的counter-increment和counter-reset counter-increment:设置某个选取器每次出现的计数器增量。默认增量是 1。counter-reset:重置某个选择器出现次数的计数器的值。可以为任意值,默认为 0。h1 {counter-increment:section;counter-reset:subsection;} //在遍历到h1时重置h2的计数器。h2 {counter-increme
4种JavaScript的内存泄露及避免方法 这篇文章里面我们会讨论客户侧javascript代码中的常见种类的内存泄漏。也会学习如何用Chrome Development Tools来定位这些问题。继续阅读吧!介绍内存泄漏是每个开发者最终必须面对的问题。即使使用有内存管理的语言,也有内存可能会泄漏的情况。泄漏是很多问题的起因:变慢,崩溃,高延迟,甚至是一些和其他应用一起用所出现的问题。内存泄漏是什么?本质上,
本地项目上传到GitHub中 初始化git仓库。 (初始化之前先用cd命令转到你本地目录下,如果不熟悉该命令,可直接到到本地目录文件中,Git Bash here)$ git init2.将你要添加的本地相添加到git仓库中。$ git add.==这个点表示所有文件。所以,你也可以把 . 换成文件名==3.提交暂存区文件$ git commit -m "some str"-m后面的参数表示把项目提交到GitHub后,会在代
cookies,sessionStorage和localStorage的区别 sessionStorage用于本地存储一个会话(session)中的数据,这些数据只有在同一个会话中的页面才能访问并且当会话结束之后数据也会随之销毁。因此sessionStorage不是一个持久化的本地存储,仅仅是会话级别的存储。而localStorage用于持久化的本地存储,除非主动删除数据,否则数据是永远不会过期的。----------WebStorage和cookie的区别: