- 浏览: 57802 次
- 性别:
- 来自: 北京
文章列表
JavaScript
- 博客分类:
- JavaScript
原生JavaScript事件监听默认只允许一个响应函数,onevent形式,onclick = function(){};
使用event listener可以注册多个响应函数
W3C方式:addEventListener(eventName, callback, false/true);
removeEventListener();
IE方式:attachEvent(onEventName, callback);
detachEvent();
事件流模型:
事件流包括三个阶段:1、捕获阶段;2、目标阶 ...
[] + {} // "[object Object]"
{} + [] // 0
[] + {} === {} + [] // true
{} + [] === [] + {} //false
var found = new Boolean(false);
if (found) {
console.log("Found"); // 会执行
}
typeof NaN // ‘number'
typeof Infinity // ’number‘
JavaScript基础知识(二)
- 博客分类:
- JavaScript
JavaScript的数据类型:number,string,boolean,null,undefined,Object
可以使用typeof来判断一个数据所属的类型,typeof返回的值可能为number,string,boolean,undefined,object,function六种中的某一种的字符串。
number,string,boolean为值类型
object,function为引用类型
JavaScript的对象,其实是若干属性的集合。
函数也是对象,
function fn() {}
document.getElemen ...
23世纪的JavaScript
- 博客分类:
- JavaScript
本文来自这里,翻译过程中加入了译者的理解并作了适当的筛减。
在过去的几年中,JavaScript应用程序在规模和复杂性方面都越来越大。市场上出现了越来越多的单页面应用,并且对这种体验的需求已经达到了促使Google最终 ...
使用JSON
- 博客分类:
- JavaScript
本文内容来自《Pro AngularJS》,原文作者为Adam Freeman。
翻译过程中加入了译者的理解,并作了适当的筛减。
JavaScript对象表示法(JSON)已成了Web应用中实际使用的数据格式。JSON非常简单且容易在JavaScript代码中使用,这使它非常流行。JSON支持一些简单的数据类型,这些数据类型能在JavaScript找到与之对应:Number,String,Boolean,Array,Object以及特殊的类型null。
在此提醒一下,下面是todo.json文件的内容,它包含的就是简单的JSON串:
[
{
"acti ...
使用Promises
- 博客分类:
- angular
- JavaScript
本文内容来自《Pro AngularJS》,原文作者为Adam Freeman。
翻译过程中加入了译者的理解,并作了适当的筛减。
promise是JavaScript中处理异步事务的一种方式,这样的事务会在后续的某个时间点上完成。通常会在使用Ajax请求的时候使用到promise,浏览器在后台发起HTTP请求,并且在请求完成后使用promise通知相应的应用程序。以下程序示例,演示了一个极简单的AngularJS应用,并在其中调用Ajax请求。
<!DOCTYPE html>
<html ng-app="demo">
<he ...
通过一行代码学JavaScript
- 博客分类:
- JavaScript
本文内容源于这里
首先来看下面这行代码:
[].forEach.call($$("*"),function(a){
a.style.outline="1px solid #"+(~~(Math.random()*(1<<24))).toString(16)
})
你可以在浏览器的控制台执行这段代码,你会看到页面中不同的HTML ...
1 自动换行
word-wrap: break-word;
word-break: normal;
2 强制不换行
white-space:nowrap;
HTML5之自定义数据属性(data-)
- 博客分类:
- HTML5
HTML5中新增了一个自定义的数据属性,该属性以“data-”为前缀。
在开发中,我们可以方便地利用它来存放一些数据,然后通过JavaScript脚本来获取相应的属性值,从而得到预设的数据内容。如:
<div id="user" data-key="admin" data-user="winstar"></div>
在脚本中获取/设置data-属性值(使用jQuery)
var key = $('#user').attr('data-key');
$('#user').attr('data-ke ...
jQuery技巧集锦
- 博客分类:
- jQuery
1 使用has()方法,保留具有特定特征的元素:
$("input").has(".email").addClass("email_icon");
2 识别IE浏览器
if ($.browser.msie) {
// for Internet Explorer
}
3 获取某个元素的位置索引
$("ul > li").click(function () {
var index = $(this).prevAll().length;
});
4 找到选中的o ...
JavaScript之执行
- 博客分类:
- JavaScript
JavaScript的解析执行是单线程的,也就是说所有的JavaScript代码是在一个线程里执行的,JavaScript引擎同一时间只执行一条代码,所以每一个JavaScript代码执行块会”阻塞“其它异步事件的执行。
JavaScript是事件驱动的,用户的操作会触发相应的事件(如点击、Ajax请求等),这些事件发生后,绑在事件上的回调函数会被添加到一个执行队列的最后等待执行。这些事件的回调函数,只有等到获得执行机会的时候才会被执行。
当JavaScript执行完当前的任务(代码块)后,会到等待的”执行队列“去看是否还有需要执行的函数或代码块,如果有,则取出队列最前端的函数 ...
JavaScript之函数
- 博客分类:
- JavaScript
在JavaScript中,函数是“第一等公民“,意味着函数可以像其它类型的数据一样,作为其它函数的参数,或者作为其它函数的返回值(也就是说函数可以返回函数)。
函数的原型对象:Function.prototype,它是一个函数,在函数 ...
JavaScript的一些技巧
- 博客分类:
- JavaScript
本文内容整理自网络。
主要列举了使用JavaScript时应该注意的一些技巧。
1 变量使用前,需要使用var关键字声明,避免使用全局变量;
2 尽量使用===(!==),而不用==(!=);
===(!==)操作不执行转换,在速度上被 ...
var name = localStorage.username; //查询一个存储的值
name = localStorage['username']; //等价于数组表示法
if(!name) {
name = prompt('what is your name?');
localStorage.username = name; //存储一个值
}
//遍历所有存储的key/value对
for(var key in localSt ...
HTML5之WebSocket
- 博客分类:
- HTML5
通过WebSocket()构造函数创建一个WebSocket:
var socket = new WebSocket('ws://ws.example.com:8888/example');
WebSocket()构造函数的参数是一个URL,该URL使用ws://协议(或者类似于https://用于安全连接的wss://协议)。该URL指定要连接的主机,还有可能指定端口(WebSocket使用和HTTP以及HTTPS一样的默认端口)和路径或者资源。
创建完WebSocket后,可以在上面注册事件监听函数:
socket.onopen = function(e){
...