自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(34)
  • 收藏
  • 关注

原创 js基础概述

1,ECMAScript有5种简单数据类型:Undefined、Null、Boolean、Number和String。     1种复杂数据类型:Object。2,对一个值使用typeof操作符返回的值:      “undefined"——如果这个值未定义      "boolean"——如果这个值是布尔值      "string"——如果这个值是字符串      "n

2014-11-30 16:00:55 430

转载 多个github帐号的SSH key切换

github使用SSH与客户端连接。如果是单用户(first),生成密钥对后,将公钥保存至github,每次连接时SSH客户端发送本地私钥(默认~/.ssh/id_rsa)到服务端验证。单用户情况下,连接的服务器上保存的公钥和发送的私钥自然是配对的。但是如果是多用户(first,second),我们在连接到second的帐号时,second保存的是自己的公钥,但是SSH客户端依然发送默认私钥,即f

2014-11-30 15:08:14 417

转载 Weinre入门手册

1. 初识Weinre  Weinre( Web Inspector Remote )是一款基于Web Inspector(Webkit)的远程调试工具, 它使用JS编写, 可以让我们在电脑上直接调试运行在手机上的远程页面。 与传统的Web Inspector的使用场景不同, Weinre的使用场景如下图, 调试的页面在手机上, 调试工具在PC的chrome, 二者通过网络连接通信。

2014-11-30 15:05:36 1841

转载 H5和Native通信剖析(IOS篇)

目前很多App都采用HyBrid的开发模式,需要实现H5和Native相互通信,比如以下场景:1. H5需要唤起Native分享组件把内容分享到其他App里;2. 当手机网络从3G切换到WIFI时,需通知H5展示更为清晰的商品图片;类似这样的通信场景很多,那么如何实现H5和Native通信呢?下面以IOS平台,来进行剖析:H5和Native的通信,可以简化为js和object-

2014-11-30 15:04:25 6833

转载 webkit手机浏览器的一些bug汇总

日期解析下面格式的时间字符串iOS(包含iOS7)不支持解析,android一直支持Date.parse("2010-03-15 10:30:00");//会返回NAN简单的解决方案是var arr = "2010-03-15 10:30:00".split(/[- :]/),date = new Date(arr[0], arr[1]-1, arr[2], arr[3

2014-11-30 15:03:20 2626

转载 无线开发的积累

meta标签这些meta标签在开发无线页面尤其是webAPP时作用很大 safari私有的标签,表示允许全屏 忽略将页面的数字识别为电话号码 强制让文档的宽度与设备的宽度保持1:1,并且文档最大的宽度比例是1.0 并且文档最大的宽度比例是1.0,且不允许用户点击屏幕放大浏览 埋点PS:content里的属性要用逗号+空格来分开lin

2014-11-30 15:01:50 499

原创 IOS:iscroll里的元素对click/tap事件不响应

最近在用IScroll实现移动端的图片的区域滚动(传动带效果),http://m.laiwang.com/market/laiwang/iscrolltest.php?spm=0.0.0.0.sQxhDM 或 http://m.laiwang.com/market/laiwang/iscrolltest.php。页面要求点击图片来播放相应的视频。移动端通过touchmove事件来触发图片滑

2014-11-30 15:00:02 8561 2

原创 移动端 video 的autoplay不起作用的解决方案

由于移动端的限制导致video标签的autoplay无法正常工作,解决办法如下://创建一个video标签var __video = $(""). css({'position':'absolute','left':'-500px','right':'-500px','width':'10px',height:'10px'}).appendTo('body');//设置视频文件地址

2014-11-30 14:58:02 16261 1

转载 jQuery三种事件绑定方式:bind(),.live(),.delegate()

.bind()    $(‘a’).bind(‘click’, function() { alert("That tickles!") });    这是最直接的绑定方法。jQuery 扫描文档找到所有 $(‘a’) 元素,然后给每一个找到的元素的 click 事件绑定处理函数。.live()    $(‘a’).live(‘click’, function() { a

2014-11-30 14:57:38 435

原创 backbone之model.destory()不发送delete请求

前段时间学习了backbone.js,蛮喜欢。最近着手做我的第二个网站todo,拿backbone来练手。todo网站呢,我计划做成跟trello一样的功能,用于项目管理及计划安排。项目中使用grunt进行构建,服务器采用nodejs+mongodb,前端采用html5,css3,jquery,backbone.js。昨天在编写前端代码的时候,发现model.destory()不发送del

2014-11-30 14:55:16 881

原创 ejs与undersore模板引擎冲突的解决方案

在我的新项目中后端使用nodejs,其中模板引擎选用了ejs。前端使用backbone作为MVC框架,其中它的模板引擎采用了underscore自带的。这两个模板引擎默认的数据填充标识是均是,这使得前端部分的模板代码会被后端的ejs解析,导致错误。解决方案:在node中重写ejs的打开和关闭标签,使得两个模板引擎的模板代码从标签在辨别出来。在node中进行如下设置,即可将ejs的模板代码标

2014-11-30 14:54:54 1027

转载 js异步加载

一、同步加载与异步加载的形式1. 同步加载我们平时最常使用的就是这种同步加载形式:script src="http://yourdomain.com/script.js">/script>同步模式,又称阻塞模式,会阻止浏览器的后续处理,停止了后续的文件加载(如图像)、渲染、代码执行。js之所以要同步执行,是因为js中可能有输出document内容、修改dom、重定向

2014-11-30 14:53:02 375

原创 多个div水平排列并出现横向滚动条

前几天做了一个静态页面(见http://todo.yajunw.com),要实现多个div水平排列,并且自动出现横向滚动条。本来以为只需父级ul元素的overflow-x:auto;overflow-y:hidden,子级li浮动显示,即可以实现。结果测试发现结果并非想象的那样,浮动的子级li在溢出父级ul后,它会自动向下排列,不会保持水平排列了。(可能是li元素中包含了很多div的缘故吧)

2014-11-30 14:48:37 16138

转载 一款创意的表单设计

今天看到一款表单的设计,交互很有创意,用户体验好,值得学习。代码实现时,可以将title设置成与输入框并行的元素,然后采用js对输入框的focus事件和blur事件做处理。nice~~~

2014-11-30 14:44:26 865

转载 css 之margin collapsing(外边距叠加)

为了给文档树中的各个元素排版定位(布局),浏览器会根据渲染模型为每个元素生成四个嵌套的矩形框, 分别称作 content box、padding box、border box 和 margin box,它们是不可分割的,并可能会重合, 这就是 CSS 规范中描述的“框模型”(box model)。对于行内元素(例如 span),垂直方向的 margin和padding 不起作用。在某些

2014-11-30 14:41:35 646

转载 CSS 之 position详解

position 有五个值:static、relative、absolute、fixed、inherit。static是默认值。就是按正常的布局流从上到下从左到右布局,平常我们做网页时,没有指定 position,也就表示使用 static。relative没有脱离布局流,此时可以使用 top、right、bottom、left 属性。top 和 bottom 共存

2014-11-30 14:40:10 478

转载 backbone.js 介绍

什么是backbonebackbone是帮助开发重量级的javascript应用的框架。它基于jquery和underscore.js(包含许多工具方法,集合操作,js模板等等),主要提供了models(模型) 、collections(集合) 、views(视图)。backbone.js文件本身很小,压缩后只有5.3KB,作为一个框架级别的核心JS文件,这个数字很可怕。简介

2014-11-30 14:38:20 681

转载 cookie基本常识

会话是一种持久的网络协议,用于完成服务器与客户端之间的一些交互行为。它比连接的粒度大,一次会话可能包含多次连接,每次连接都被认为是会话的一个操作。许多应用层网络协议都是由会话支持的,如FTP,Telnet等。而Http协议是无状态的,本身不支持会话,于是cookie便诞生了。   通常意义上的Http协议的会话功能是:浏览器首次向服务器发起请求时,服务器生成一个唯一标识符并发送给客户端浏览

2014-11-30 14:36:40 397

转载 CSS 3 之Media Query

在CSS2中允许使用“media”来指定特定的媒体类型,如屏幕(screen),打印(print),TV, handheld等,其中all表示的是支持所有媒体介质。CSS3中的Media Queries增加了更多的媒体查询,同时可以添加不同的媒体类型的表达式用来检查媒体是否符合某些条件,如果媒体符合相应的条件,那么就会调用对应的样式表。这功能是非常强大的,可以定制不同的分辨率和设备,并在不

2014-11-30 14:35:12 380

转载 XSS解析

XSS 全称(Cross Site Scripting) 跨站脚本攻击,是Web程序中最常见的漏洞。指攻击者在网页中嵌入客户端脚本(例如JavaScript), 当用户浏览此网页时,脚本就会在用户的浏览器上执行,从而达到攻击者的目的。比如获取用户的Cookie,导航到恶意网站,携带木马等。XSS 是如何发生的呢假如有下面一个textbox input type="text" nam

2014-11-30 14:28:56 576

转载 使用Git管理代码

建立代码仓库init config$ git init当前目录被称为*工作树*$ git config --global user.name "Your Name Comes Here"$ git config --global user.email [email protected]设置用户名和邮箱,此信息会保存在每次commit的log中,使

2014-11-30 14:26:35 330

转载 jQuery优缺点

优点:jQuery强调的理念是:写的少,做的多(write less, do more)。其独特的选择器、链式的DOM操作方式、事件绑定机制、封装完善的Ajax都是其它JavaScript库望尘莫及的。(1)轻量级。jQuery非常轻巧,采用Dean Edwards的Packer(http://dean.edwards.name/packer/) 压缩后,只有不到30KB的大小,如

2014-11-30 14:26:00 1046

转载 CSS 之 px 和 em

由于IE无法调整那些使用px作为单位的字体大小,所以采用em作为字体单位还是蛮有优势的。px像素(Pixel)是相对长度单位。像素px是相对于显示器屏幕分辨率而言的。em是相对长度单位。相对于当前对象内文本的字体尺寸。如当前对行内文本的字体尺寸未被人为设置,则相对于浏览器的默认字体尺寸。任意浏览器的默认字体都是16px。所有未经调整的浏览器都符合: 1em=16px。那12

2014-11-30 14:23:48 346

转载 CSS 之选择器的优先级别

一般而言,选择器越特殊,它的优先级越高。也就是选择器指向的越准确,它的优先级就越高。通常我们用1表示标签名选择器的优先级,用10表示类选择器的优先级,用100标示ID选择器的优先级。     div.test1 .span var 优先级 1+10 +10 +1                                                           sp

2014-11-30 14:22:44 750

转载 css不改变子元素透明度

一般情况下,我们可以使用css的opcity属性改变某个元素的透明度,但是其元素下的子元素的透明度也会被改变,即使对子元素重新定义也没有用,例如: style="opacity:0.4; background-image:url(...);">    style="opacity:1.0;">    显示文字       文字元素的透明度也会是0.4。如果有方法只改

2014-11-30 14:21:14 487

转载 QUnit前端单元测试

断言断言是单元测试必不可少的部分,单元测试实质就是验证实际运行结果是否与期待的结果一致。QUnit提供三个断言。ok(truthy[, message])ok()是最基本的断言,只有一个参数是必须的,如果这个参数是真值(true或能转换成true),断言就会通过,否则就会失败,还可提供一个测试结果字符串,例如测试:这个测试中的6个断言都会失败;每个断言判断一

2014-11-30 14:18:51 792

转载 ASCII,Unicode和UTF-8

1. ASCII码我们知道,在计算机内部,所有的信息最终都表示为一个二进制的字符串。每一个二进制位(bit)有0和1两种状态,因此八个二进制位就可以组合出 256种状态,这被称为一个字节(byte)。也就是说,一个字节一共可以用来表示256种不同的状态,每一个状态对应一个符号,就是256个符号,从 0000000到11111111。ASCII码一共规定了128个字符的编码,比如空格

2014-11-30 14:16:14 357

转载 position:fixed ,锚点定位不准确的问题

解决方案:1.    参照 stackoverflow 的做法,在主体内容前加一个暗锚将锚点进行偏移,并隐藏占位:.target-fix {    position: relative;    top: -44px; // 偏移值    display: block;    height: 0;    overflow: hidden;}2.    对于现代浏

2014-11-30 14:15:23 6542

转载 关于firefox中一些问题的解决方案

1.div的高度自适应的解决方案嵌套DIV中,父DIV的高度不能根据子DIV自动变化的一种解决方法:  当Content内容多时,即使parent设置了高度100%或auto,在不同浏览器下还是不能完好的自动伸展。解决方案1:父元素(parent)设置overflow:hidden;解决方案2:在层的最下方产生一个高度为1的空格,可解除这个问题。2.对高度的

2014-11-30 14:13:44 398

转载 Mongoose 基本功能使用

Mongoose 是什么?Mongoose 是 MongoDB 数据库的模型工具,为 NodeJS 设计,工作于异步环境下。与其它同类工具相比,一回更喜欢它灵活友好的 API。相似的,还存在 MongoSkin,MongoLian,以及原生驱动 node-mongodb-native等。查询文档查询多条文档:Model.find(query, fields, o

2014-11-30 14:09:39 1941

转载 SQL到NOSQL的思维转变

NOSQL系统一般都会宣传一个特性,那就是性能好,然后为什么呢?关系型数据库发展了这么多年,各种优化工作已经做得很深了,NOSQL系统一般都是吸收关系型数据库的技术,然后,到底是什么因素束缚了关系型数据库的性能呢?我们从系统设计的角度看这个问题。    1, 索引支持。关系型数据库创立之初没有想到今天的互联网应用对可扩展性提出如此高的要求,因此,设计时主要考虑的是简化用户的工作,SQL语言

2014-11-30 14:07:14 393

转载 关于NodeJs为什么要用mongoose操作mongodb

很多nodejs的新手都是直接用mongodb本身直接操作数据库,我之前也是如此。不知道大家有没有遇到过这个错误:Error: db object already connecting, open cannot be called multiple times    也许你会说是异步写得不好,但是就算异步写得再好,也逃避不了这个错误。因为无论如何,都要用到db.open();这东西,而且访

2014-11-30 14:04:39 1552

转载 mongodb启动失败:javascript execution failed: L112

我在运行的时候出现了这样的错误:不能连接到服务  :\mongodb\mongodb-win32-i386-2.4.4\bin>mongomongoDB shell version: 2.4.4connecting to: testat Jun 08 09:01:36.048 JavaScript execution failed: Error: couldn't connect to

2014-11-30 14:02:46 600

转载 在nodejs express 中使用session的功能

var express = require('express'),    routes = require('./routes'),    user = require('./routes/user'),    http = require('http'),    path = require('path'); var app = express(); // all env

2014-11-30 14:00:52 1023

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除