Category: Web

  • JavaScript学习摘抄

    在看从图书馆借的JavaScript学习指南 (美) Shelley Powers著

    javascript语言精粹

    JavaScript

    JavaScript 是一种解释性语言(就是说,代码执行不进行预编译)

    两个正斜杠是 JavaScript 的注释符号,它会阻止 JavaScript 编译器对这一行的编译。

    多行注释以 /* 开头,以 */ 结尾。

    多用单行注释,不容易出错

    当页面载入时,会执行位于 body 部分的 JavaScript。

    当被调用时,位于 head 部分的 JavaScript 才会被执行。

    代码块以左花括号开始,以右花括号结束。

    代码块的作用是一并地执行语句序列。

    通过 var 语句来声明 JavaScript 变量,并且为局部变量

    变量是区分大小写的

    变量不要和javascript的关键字冲突

    多用匈牙利命名法

    多用小驼峰式命名法(lower camel case):第一个单字以小写字母开始;第二个单字的首字母大写,例如:firstName、lastName。

     

    首字母大写通常表示为类

     

    什么是cookie?

    cookie 是存储于访问者的计算机中的变量。每当同一台计算机通过浏览器请求某个页面时,就会发送这个 cookie。你可以使用 JavaScript 来创建和取回 cookie 的值。

    坚持养成用分号结束的好习惯

    布尔值不需要引号,加引号”false”和不加false意义完全不同

    自已用起来方便的注释块

    /*

    author:jpuyy.com date:

    for use:
    modified by xx at date
    version:
    history:

    */

    Ajax程序库jQuery

     

  • div+css学习中要注意的地方

    理念:
    CSS 允许你对布局进行完全地控制
    CSS能达到你想要的效果。例:关闭圆点是 CSS 的最基本的能力。它有能力使列表看起来和普通文本没有两样,也可以使列表看起来像图形导航栏,具有完整的反转效果。
    加强用html进行结构化,使用列表元素来标记列表,这样在所有设备里都会认为他是列表。
    XHTML 和 CSS 也会被误用和滥用,有时可能还不如html,思维要考虑如何用它们产生更有效的代码,要不只会是新垃圾代替旧垃圾。
    为你的网页减肥,尽量做到,就像没有女人会讨厌自已太瘦
    在W3C的描述中我们可以找到理解 div 元素的关键,“一种添加结构的通用机制。”

    使用 em 来设置字体大小

    如果要避免在 Internet Explorer 中无法调整文本的问题,许多开发者使用 em 单位代替 pixels。
    W3C 推荐使用 em 尺寸单位。1em 等于当前的字体尺寸。如果一个元素的 font-size 为 16 像素,那么对于该元素,1em 就等于 16 像素。在设置字体大小时,em 的值会相对于父元素的字体大小改变。

    以上段标记的css代码:

    如果要避免…………………小改变。

     

     

    font属性里可以将所有的写在一起,如
    p.ex2
    {
    font:italic bold 12px/20px arial,sans-serif;
    }
    10px/20px分别是字的大小和行间距,这样就可以不用line-height来设置了

    outline和border
    border在outline的里面
    边框外是外边距,边框内是内边距

    css 模型

    padding 上 右 下 左;
    当说到width时,实际上说的是内容的宽度,而不算内边距,外边距
    如果边框样式为 none,即边框根本不存在,那么边框就不可能有宽度,因此边框宽度自动设置为 0
    外边距合并指的是,当两个垂直外边距相遇时,它们将形成一个外边距。合并后的外边距的高度等于两个发生合并的外边距的高度中的较大者。

    使用id选择器要注意:
    一个html文档只能出现一次
    id=””中不能有空格
    id区分大小写
    id的规则

    id 值必须以字母或者下划线开始;不能以数字开始。虽然 W3C 验证不会捕获这个错误,但是 XML 解析器会的。同时,如果你将 id 与 JavaScript 在表单中配合使用,那么 id 名称和值必须是合法的 JavaScript 变量。空格和连字号,特别是连字号,是不被允许的。不仅如此,将下划线用于 class 或者 id 名都不是个好主意,这是由于在 CSS2.0(以及某些浏览器)中的限制。

    后代选择器会选所有的符合的元素
    子元素选择器会先挨着的元素,如选的不挨着,则无效

  • curl实战

    取得头信息

    curl --head 127.0.0.1
    curl -I 127.0.0.1

    取得http状态码(加-I只加载头信息,速度更快)
    -w后加变量,获取很多与请求相关的额外信息显示在屏幕上,如%{http_code}显示状态码,%{time_total} 响应时间, %{size_download}页面大小, %{content_type} 页面类型

    curl -s -o /dev/null -w "%{http_code}" http://jpuyy.com
    curl -s -o /dev/null -I -w "%{http_code}" http://jpuyy.com

    如果有一批url需要判断状态码,写入url_http_status.txt中,脚本如下:

    #!/bin/bash
    for i in `cat url_http_status.txt`
    do
    STATUS_CODE=`curl -o /dev/null -s -w %{http_code} $i`
    echo -e "$i:\t$STATUS_CODE"
    done

    使用安静模式

    --silent

    curl 跟踪 301跳转,使用参数 -L

    ➜  ~  curl -I http://www.jpuyy.com -L
    HTTP/1.1 301 Moved Permanently
    Server: nginx/1.0.15
    Date: Sun, 09 Nov 2014 10:40:15 GMT
    Content-Type: text/html; charset=UTF-8
    Connection: keep-alive
    X-Powered-By: PHP/5.3.3
    X-CF-Powered-By: WP 1.3.14
    X-Pingback: http://jpuyy.com/xmlrpc.php
    Location: http://jpuyy.com/
    
    HTTP/1.1 200 OK
    Server: nginx/1.0.15
    Date: Sun, 09 Nov 2014 10:40:16 GMT
    Content-Type: text/html; charset=UTF-8
    Connection: keep-alive
    Vary: Accept-Encoding
    X-Powered-By: PHP/5.3.3
    X-CF-Powered-By: WP 1.3.14
    X-Pingback: http://jpuyy.com/xmlrpc.php
    

    取得多个子域名信息

    curl http://site.{one,two,three}.com
    如:curl http://{bbs,ftp,nic}.cczu.edu.cn

    下载file1.txt-file100.txt

    ftp://ftp.numericals.com/file[1-100].txt
    ftp://ftp.numericals.com/file[001-100].txt (with leading zeros)
    ftp://ftp.letters.com/file[a-z].txt
    http://any.org/archive[1996-1999]/vol[1-4]/part{a,b,c}.html
    http://www.numericals.com/file[1-100:10].txt 10,20.....txt

    关于cookies

    The file specified with -b/–cookie is only used as input.No cookies will be stored in the file.

    用于读入

    To store cookies, use the -c/–cookie-jar option or you could even save the HTTP headers to a file using -D/–dump-header!

    curl --cookie "desktop=1;key2=value2" -v -o /dev/null http://jpuyy.com/

    curl伪造头信息

    curl --header "X-Forwarded-For:8.8.8.8" --header "Accept-Language: en" http://www.jpuyy.com

    curl模拟指定浏览器

    curl -A "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:25.0) Gecko/20100101 Firefox/25.0" [URL]

    curl模拟指定的referer

    curl [URL] -e http://www.aavv.com
    或使用 --referer

    curl使用压缩

    curl -I "http://www.hao123.com" --compressed
    curl -I -H "Accept-Encoding: gzip, deflate" "http://www.hao123.com"

    curl执行post提交

    curl http://localhost:8000/wrap -d text=kadj+kdsj+kasdfj+kaslfdj+jkdasljf+skdfjal-yyyyksdjf-kasjd

    curl 带账号,basic 认证

    -u, --user <user:password>
    
    curl -L -i --user myuser:mypass http://abc.example.com/manage
    

    curl https出现错误

    curl -sS https://getcomposer.org/installer
    curl: (60) SSL certificate problem, verify that the CA cert is OK. Details:
    error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed
    More details here: http://curl.haxx.se/docs/sslcerts.html

    解决办法:
    http://curl.haxx.se/docs/caextract.html 下载 ca-bundle.crt到 /etc/pki/tls/certs/ca-bundle.crt

    curl 指定代理服务器

    curl http://jpuyy.com -x 211.61.47.19:80

    指定 socks5 代理服务器

    curl --socks5 127.0.0.1:1081 jpuyy.com/ip.php

    更多案例:http://www.thegeekstuff.com/2012/04/curl-examples/

    下载 github release tar.gz 包

    curl -L -O https://github.com/ansible/ansible/archive/v2.1.0.0-0.2.rc2.tar.gz

    获取 token,先准备一个认证文件 auth.json

    {
    "username":"jpuyy",
    "password":"pass"
    }
    

    发送请求

    curl -v -XPOST info.mysite.com/api/auth/token -d @auth.json -H 'Content-Type: application/json'
    

    根据认证的 token 放在 header 访问

    curl info.mysite.com/api/config/web.gui-H "Authorization: FuZzA2In0..."

    curl 返回 000 状态码表示超时

    curl 测试 websocket

    curl -i -N -H "Connection: Upgrade" -H "Upgrade: websocket" -H "Host: echo.websocket.org" -H "Origin: http://www.websocket.org" http://echo.websocket.org

    curl 下载断点重连

    curl -O -C - http://jpuyy.com/a.txt
    

    curl 自己指定域名的解析

    --resolve [DOMAIN]:[PORT]:[IP]
    curl https://jpuyy.com --resolve jpuyy.com:443:192.168.1.66
    

    curl 重复请求 100次

    curl 'https://jpuyy.com/abc?[1-100]'
    
  • 我使用的几个wordpress插件

    用wordpress也老长时间了

    wordpress装插件很方便,有好多插件是国人开发便于中文用户使用的

    在这里我就记录下来整理一下

    当前用的主题是 PhilNa 1.0.9,作者为 yinheli 各方面我都比较满意

    有若干个控制字体的,用javascript来显示脚本 高亮文字的,我基本不用 。 一是咱没那么出息会那么多语言,二是wordpress的引号已经够我用的了

    插件:Akismet

    一款优秀的防垃圾评论插件。

    在Akismet配置里有说明,去申请一个key就好了。若您还没有 API key,您可从 Akismet.com 得到一个。

    插件:日志自动截断

    自动截断日志,可达到在首页显示一大段而不是全部显示的效果,可以选择截断的长度并去除所有脚本类的文字,使首页看起来美观

    插件:WP-Cumulus

    标签云插件,不支持中文,有人推出一个swf可以支持中文,但是我用了下比较卡,而且不好看,就没有用,我的tag全是英文的,也就简单的英文单词,也用不着中文

    插件:WP-DB-Backup

    设置好自动备份选项自动备份数据库的,用处大

    插件:Quotmarks Replacer

    有时候整理好的命令或代码拷贝的时候出现中文字符,用此插件解决引号等全角问题

    插件:Google Syntax Highlighter for WordPress

    平时用不大到,哪里有那么多代码可写,所以删掉了,有些东西就是,功能强大反而用不到. Supports C++, C#, CSS, Delphi, Java, JavaScript, PHP, Python, Ruby, SQL, VB, XML, and HTML.

    插件:Countdown Timer

    自动倒计时的功能,给懒人用的

    插件:cos-html-cache

    该插件会在页面第一次载入的时候产生和url对应的真正的html文件作为缓存,后面的运行将会直接载入该html从而大大的提高了页面的效率。有利有弊。也不用了,用了之后我的搜索框没法搜东西,于是用了谷歌的自定义搜索

    插件:Code Markup

    A filter that displays <code> blocks nicely while still allowing formatting.
    对于想显示的html标签代码,放入<code lang=”xhtml”></code>里面

    插件:All in One SEO Pack

    Out-of-the-box SEO for your WordPress blog. Options configuration panel | Upgrade to Pro Version | Donate | Support | Amazon Wishlist
    插件:Google XML Sitemaps
    This plugin will generate a special XML sitemap which will help search engines like Google, Yahoo, Bing and Ask.com to better index your blog.
    插件:Wireless-WordPress
    为你的WordPress增加wap主题模板功能,让你的WordPress博客拥有一个更加友好的UI.
    插件:WP-PageNavi分页导航
    增加了一个更美观实用的分页导航到你的WordPress博客
    插件:Random Pages Widget
    显示随机文章

  • google chrome键盘和鼠标快捷键

    标签页和窗口快捷键

    Ctrl+N 打开新窗口。
    Ctrl+T 打开新标签页。
    Ctrl+Shift+N 在隐身模式下打开新窗口。
    按 Ctrl+O,然后选择文件。 在 Google Chrome 浏览器中打开计算机中的文件。
    按住 Ctrl 键的同时点击链接。或用鼠标中键(或鼠标滚轮)点击链接。 从后台在新标签页中打开链接。
    按住 Ctrl+Shift 的同时点击链接。或按住 Shift 键的同时用鼠标中键(或鼠标滚轮)点击链接。 在新标签页中打开链接并切换到刚打开的标签页。
    按住 Shift 键的同时点击链接。 在新窗口中打开链接。
    Ctrl+Shift+T 重新打开上次关闭的标签页。Google Chrome 浏览器可记住最近关闭的 10 个标签页。
    将链接拖到标签页中。 在标签页中打开链接。
    将链接拖到标签栏的空白区域。 在新标签页中打开链接。
    将标签页拖出标签栏。 在新窗口中打开标签页。
    将标签页从标签栏拖到现有窗口中。 在现有窗口中打开标签页。
    拖动标签页时按 Esc 键。 将标签页恢复到原先的位置。
    Ctrl+1 到 Ctrl+8 切换到标签栏中指定位置编号所对应的标签页。
    Ctrl+9 切换到最后一个标签页。
    Ctrl+Tab 或 Ctrl+PgDown 切换到下一个标签页。
    Ctrl+Shift+Tab 或 Ctrl+PgUp 切换到上一个标签页。
    Alt+F4 关闭当前窗口。
    Ctrl+W 或 Ctrl+F4 关闭当前标签页或弹出窗口。
    用鼠标中键(或鼠标滚轮)点击标签页。 关闭所点击的标签页。
    右键点击或者点击并按住浏览器工具栏中的“后退”或“前进”箭头。 在新标签页中显示浏览历史记录。
    按 Backspace 键,或同时按 Alt 和向左箭头键。 转到当前标签页的上一页浏览历史记录。
    按 Shift+Backspace,或同时按 Alt 和向右箭头键。 转到当前标签页的下一页浏览历史记录。
    按住 Ctrl 键的同时点击工具栏中的后退箭头、前进箭头或转到按钮。或用鼠标中键(或鼠标滚轮)点击任一按钮。 从后台在新标签页中打开按钮所对应的目标网页。
    双击标签栏的空白区域。 最大化或最小化窗口。
    Alt+Home 在当前窗口打开主页。

    Google Chrome 浏览器功能快捷键

    Alt+F 或 Alt+E 打开“工具”菜单,用该菜单可自定义和控制 Google Chrome 浏览器中的设置。
    Ctrl+Shift+B 打开和关闭书签栏。
    Ctrl+H 打开“历史记录”页面。
    Ctrl+J 打开“下载内容”页面。
    Shift+Esc 打开任务管理器。
    Shift+Alt+T 将焦点设置在浏览器工具栏中的第一个工具上。然后就能用以下快捷键在工具栏中移动:

    • 按 Tab、Shift+Tab、Home、End、向右箭头向左箭头,可在工具栏中将焦点移到各个选项上。
    • 空格键或 Enter 可激活工具栏按钮,包括网页操作和浏览器操作。
    • 按 Shift+F10 可打开相关右键菜单(例如,“后退”按钮关联的浏览历史记录)。
    • 按 Esc 可将焦点从工具栏移回到网页上。
    F6 或 Shift+F6 将焦点切换到下一个键盘可访问的窗格。这些窗格包括:

    • 地址栏
    • 书签栏(若显示)
    • 主要的网络内容(包括任何信息栏)
    • 下载内容栏(若显示)
    Ctrl+Shift+J 打开开发人员工具。
    Ctrl+Shift+Delete 打开“清除浏览数据”对话框。
    F1 在新标签页中打开帮助中心(首选方式)。

    地址栏快捷键

    键入搜索字词,然后按 Enter 键。 使用默认搜索引擎进行搜索。
    键入搜索引擎关键字,按空格键,然后键入搜索字词,再按 Enter键。 使用与关键字相关联的搜索引擎进行搜索。
    首先键入搜索引擎网址,然后在系统提示时按 Tab 键,键入搜索字词,再按 Enter 键。 使用与网址相关联的搜索引擎进行搜索。
    Ctrl+Enter 在地址栏的输入内容前后分别加上 www. 和 .com,并打开得到的网址。
    键入网址,然后按 Alt+Enter 在新标签页中打开网址。
    或 Ctrl+L 或 Alt+D 突出显示网址。
    Ctrl+K 或 Ctrl+E 将“?”中输入“?”。在问号后键入搜索字词可用默认搜索引擎执行搜索。
    同时按 Ctrl 和向左箭头键。 在地址栏中将光标移到上一个关键字词
    同时按 Ctrl 和向右箭头键。 在地址栏中将光标移到下一个关键字词
    Ctrl+Backspace 在地址栏中删除光标前的字词
    用键盘上的方向键从地址栏下拉菜单中选择一个条目,然后按Shift+Delete 从浏览历史记录中删除所选条目(如果可以)。
    用鼠标中键(或鼠标滚轮)点击地址栏下拉菜单中的一个条目。 从后台在新标签页中打开该条目。
    显示地址栏下拉菜单时按 Page Up 或 Page Down 选中下拉菜单中的第一个或最后一个条目。


    网页快捷键


    Ctrl+P 打印当前网页。
    Ctrl+S 保存当前网页。
    F5 或 Ctrl+R 重新载入当前网页。
    Esc 停止载入当前网页。
    Ctrl+F 打开查找栏。
    Ctrl+G 或 F3 在查找栏中查找下一条与输入内容相匹配的内容。
    Ctrl+Shift+GShift+F3 或 Shift+Enter 在查找栏中查找上一条与输入内容相匹配的内容。
    点击鼠标中键(或鼠标滚轮)。 激活自动滚动模式。当您移动鼠标时,网页会根据鼠标的移动方向自动滚动。
    Ctrl+F5 或 Shift+F5 重新载入当前网页,忽略缓存的内容。
    按住 Alt 键,然后点击链接。 下载链接目标。
    Ctrl+U 打开当前网页的源代码。
    将链接拖到书签栏中 将链接保存为书签。
    Ctrl+D 将当前网页保存为书签。
    Ctrl+Shift+D 将所有打开的网页以书签的形式保存在新文件夹中。
    F11 在全屏模式下打开网页。再按一次 F11 可退出全屏模式。
    Ctrl++,或者按住 Ctrl 键并且向上滚动鼠标滚轮。 放大网页上的所有内容。
    Ctrl+,或者按住 Ctrl 键并且向下滚动鼠标滚轮。 缩小网页上的所有内容。
    Ctrl+0 将网页上的所有内容都恢复到正常大小。
    空格键 向下滚动网页。
    Home 转至网页顶部。
    End 转至网页底部。
    按住 Shift 键的同时滚动鼠标滚轮。 在网页上横向滚动。

    文本快捷键

    Ctrl+C 将突出显示的内容复制到剪贴板中。
    Ctrl+V 或 Shift+Insert 从剪贴板中粘贴内容。
    Ctrl+Shift+V 从剪贴板中粘贴内容(不带格式)。
    Ctrl+X 或 Shift+Delete 删除突出显示的内容并将其复制到剪贴板中。


    chrome 浏览器插件

    * Tab to window
    * vimium
    * xTab

  • WordPress 常用的快捷键

    WordPress 后台的在线可视化编辑器使用的是 TinyMCE,所以在 WordPress 后台编辑的时候,和 TinyMCE 一样也有键盘快捷键,掌握这些快捷键可以让我们在 WordPress 后台编辑文章的时候事半功倍,下面是我们常用的快捷键:

    粗体: Alt+SHIFT+b
    斜体: Alt+SHIFT+i

    添加链接: Alt+SHIFT+a

    引用: Alt+SHIFT+q
    代码: Alt+SHIFT+c

    添加 <!–more–>: Alt+SHIFT+t

    无序列表 (ul): Alt+SHIFT+u
    有序列表 (ol): Alt+SHIFT+o
    列表元素 (li): Alt+SHIFT+l

    高级编辑器: Alt+SHIFT+v
    编辑 HTML: Alt+SHIFT+e

    发布日志: Alt+SHIFT+p

    填入修订文本: Alt+SHIFT+s
    删除文本: Alt+SHIFT+d

    缩进: Alt+SHIFT+w

    回退: Alt+SHIFT+u
    重做: Alt+SHIFT+y

    居左: Alt+SHIFT+f
    居中: Alt+SHIFT+c
    居右: Alt+SHIFT+r