庇护祝福的分享

Be worthy

Javascript权威指南笔记二:客户端js基础

计时器

setTimeout(fun() , 2000); //两秒后执行函数fun()
setInterval(fun() , 2000); //每隔2秒执行一次fun()

对话框

alert() :打印js脚本返回值,一般只用于调试
confirm():要求用户确认或取消,返回布尔值
prompt():让用户输入字符串,并返回该字符串
showModalDialog():第一个参数是url,第二个参数是任意值,可通过window.dialogArguments访问到,第三个参数包含以分号隔开的name=value对。
参数样例:’resizable:yes;scroll:yes;status:no;dialogWidth=320px;dialogHeight=230px;center=yes;help=no’

window对象

location

当前显示文档的url window.location === document.location document.URL:文档首次载入后的URL字符串,如果片段标示符(如#top)发生改变,document.URL不会发生改变,而window.location会相应变化。

URL分解: href:默认,获取完整url
search:获取?后的内容
protocol:返回当前url的协议
host:设置或返回主机名和端口号
hostname:设置或返回主机名
port:设置或返回端口号
pathname:设置或返回url的路径部分
hash:获取#后的内容

location方法:
assign() 加载新文档
reload() 刷新
replace() 加载新文档,并删除旧文档浏览记录

history

该窗口的浏览历史 history方法: back() , forward():后退,前进
go():接受一个整数参数,作为前进后退的步数

navigator

navigator属性引用的是Navigator对象,Navigator对象主要包含4种属性:

userAgent:最常用的浏览器嗅探代码,http头中的的字符串
appVersion:浏览器厂商和版本信息的详细字符串
platform:操作系统信息
appName:web浏览器的全称

Navigator对象其他非标准化属性: onLine:判断浏览器是否连接网络

screen

height,width:屏幕宽高
availHeight , avaliWidth:除去任务栏等真实可用的宽高

open() & close()

example:

 window.open("url" , "窗口名" ,"width=400,height=350,resize=yes")
 window.close()

选取元素

getElementById( )

获取设置了id的元素

getElementByName( )

获取设置了name属性的元素

getElementByTagName( )

获取标签名,example:

var ps = document.getElementByTagName("p") //获取所有的<p>元素
var first_p = document.getElementByTagName("p")[0]  //获取第一个<p>元素

getElementByClassName( )

获取类名

innerHTML

获取标签内的html文档

textContent = innerText

获取或修改标签内文本内容,textContent在一些IE版本中不支持

Javascript权威指南笔记一:核心语法(对象)

数据类型:

javascript中有六种基础数据类型:数字,字符串,布尔值,对象,函数,以及undefined。

运算符:

创建对象:

对象直接量:

var empty = {}
var book = {
    "main title" : "javascript" , 
    "for" : "all" ,
    "author" : "xieyu"
}

使用new运算符创建对象:

var o = new Object(); //创建一个空对象,和{}一样
var a = new Array(); //创建一个空数组,和[]一样

使用Object.create():

参数是用于继承的原型对象
var o1 = Object.create({x:1 , y:2});

原型(prototype)

除了null之外所有对象都继承于Obiect.prototype

Rails常用gem

总结一下最近rails项目用到的gems

rubygems官方网站
最流行的rubygems排名

测试:

rspec-rails
pry (命令行断点调试工具)

前端 :

compass-rails
masonry-rails (瀑布流)

部署:

unicorn
passenger

web service接口:

grape

数据库支持:

mysql2 mysql数据库支持
mongoid mongodb数据库支持

后台队列:

resque

文件上传:

Carrierwave

分页:

will_paginate
Kaminari

用户系统:

devise 全面的登陆注册系统
cancan 用户权限设置
bcrypt-ruby 用于加密

富文本编辑:

rails_kindeditor

Bootstrape:

twitter-bootstrap-rails
bootstrap-sass

图片处理:

mini_magick (需要安装imagemagick)

memcache:

dalli

JS数据引用

gon #可以在JS中使用服务端数据

前端样式库小结

之前整理了一些标准化的的样式作为公司的前端类库,总结一下主要内容:

scss和compass的应用

渐变色,圆角等在IE上的实现

使用PIE,但是只能实现二维度的颜色渐变,也无法指定圆角的位置,但足以应付大多数的需求。

表单样式的统一与美化

label标签的应用

example:

<label class="numberborder">
    <input id="s1" class="number" value=1></input>
    <div class="numberadjust" id=1>
        <div class="numberup"></div>
        <div class="numberdown"></div>
    </div>
</label>     

点击label标签可以直接获取与label标签关联表单的焦点,由于表单元素在不同浏览器下的默认样式都不一样且不够美观,
而且有些表单样式无法通过css修改,那么通过隐藏原有表单并设置label标签的样式来实现。

滚动条样式的美化

example:

::-webkit-scrollbar {
    width: 12px;
}
::-webkit-scrollbar-track        //滑轨
{
    -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3); 
    -webkit-border-radius: 10px;
    border-radius: 10px;
}
::-webkit-scrollbar-thumb           //滚动条里的滑块
{
    -webkit-border-radius: 10px;
    border-radius: 10px;
    background: rgba(200,200,200,0.8); 
    -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.5); 
}
::-webkit-scrollbar-thumb:window-inactive
{
background: rgba(200,200,200,0.4); 
}

浏览器兼容性问题整理

IE6,7下的z-index问题

inline-block纵向显示问题

IE不支持position:fixed问题

如何去除IE虚线框

js插件的整理

作为一种面向对象的语言,实际工程中,我们更多的使用现成的js类库,需要对好用的类库做一些整理,以加速开发进度。

前端表单验证:

自定义<select>标签样式:

Bootstrap中整合的js部分:

Github+octopress创建自己的博客

添加SSH公钥

$ cd ~/.ssh
$ ssh-keygen -t rsa -C "your_email@example.com"
将id_rsa.pub文件中的公钥copy到github上
$ ssh -T git@github.com #测试是否通过。

新建仓库

在github上新建一个仓库,命名为 yourname.github.com

本地安装octopress

$ git clone git://github.com/imathis/octopress.git octopress #下载octopress
$ cd octopress
$ bundle install 
$ rake install #安装默认主题

配置

编辑_config.yml文件配置博客名,扉页等
编辑config.rb文件配置css,图片路径等

编辑,上传

$ rake new_post["my first blog"] #新建blog
创建以后会在/source/_post目录下创建一个时间戳开头的文件,编辑这个文件撰写博客. 如果无法执行可以先输入:
$ alias rake="noglob rake"

$ rake setup_github_pages #配置本地与github连接
根据提示操作即可

$ rake generate #项目静态化
将配置修改,和编辑过的内容导入public中,window下控制台编码默认为GBK,需要在cmd下使用命令: chcp 65001将控制台代码格式转为utf-8

$ rake preview #预览
可以使用http://localhost:4000预览

$ rake deploy #上传