2006年jack slocum斯洛克姆 基于yui写的扩展前端框架(就是由一些前端可视化组件如表单,树, 表格,等组成的frameset或者叫作 ui engine),叫yui-ext, 后来成熟后独立了在0.33版的时候改成exejs. 2007年发布1.0版本. 如今最新版本是5.0 比较成熟和大改动的是4.0版本
Extjs和触摸屏和svg项目合并为 sencha 项目, 主要是让Extjs能处理触摸屏和图像处理功能.javascript
ajax自己是属于前端技术, 跟后台无关, 由于它不参与后台数据/程序处理, 它只管接受后台传送来的数据, 至于数据是怎么来的, 怎么处理的它不关心.
因此Extjs 是一个前端ajax框架:php
ExtJS能够用来开发RIA也即富客户端的AJAX应用,是一个用javascript写的,主要用于建立前端用户界面,是一个与后台技术无关的前端ajax框架。
该框架彻底基于纯Html/CSS+JS技术,提供丰富的跨浏览器UI组件,灵活采用JSON/XML数据源开发,使得服务端表示层的负荷真正减轻,从而达到客户端的MVC应用
JQuery、 Prototype和YUI都属于很是核心的JS库。虽然YUI,还有最近的JQuery,都给本身构建了一系列的UI器件(Widget)(好比jquery自己也有一些jqueryUi, 或jquery EasyUI),不过却没有一个真正的整合好的和完整的程序开发平台。哪怕是这些低层的核心库已经很是不错了,但当投入到真正的开发环境中,依然须要开发者作大量的工做去完善不少缺失之处。而Ext就是要填补这些缺口。主流开源框架中只有Dojo像Ext同样,尝试着提供整合的开发平台。html
组件包括配置属性/事件/方法. 事件和方法的区别: 事件是监听器, 处于"伺服"状态, 捕获和监听; 而方法是处理操做组件的api.前端
要学习及应用好Ext框架,须要理解Html DOM、Ext Element及Component三者的区别。 全部的方法和事件等操做, 最终都要经过js来操做dom , 最终全部的改变, 都要反应到html页面上来. 为了更好更方便的操纵dom, 使用了ext element元素对dom作了包装/封装, 可是只有dom和element是不够的, 由于有时候, 你要显示一些交互式的ui界面, 如表格, 图形, 树, 对话框, 这些不是dom(或者说不能直接的, 直观的用dom来表示, 虽然最后仍是要转化为html代码). 这时就要使用ext的components组件了.java
Ext自己的华丽外表就很吸引眼球了,但这仅仅是其外在的美,还有最核心的内在美,即:Json(JavaScript Object Notation)。Json是一种数据交互格式,一个不能实现数据交互功能的项目是没有任何意义的,大多的Ajax框架的数据交互都基于Json,如:jQuery、ExtJs等。所以理解Json掌握Json并熟练运用是很重要的。jquery
在md的引用表示中, 全部的引用的都放在 > 后面, 若是 两个> 行之间没有空格, 则这些内容都表示 "一个" 引用段落, 被放在一块儿. 若是你要 将两个段落分红两个 引用框进行显示, 则在> 的行之间留有 至少一个空行 linux
如何禁用百度联盟网站的个性化推广?
是由于百度会记录并使用, 用户的cookie(cookie中会记录用户的搜索关键字和点击行为).
有两种方法能够禁用cookie:git
在"使用百度前阅读"-> 隐私使用保护 -> 个性化配置 -> "禁用cookie"
ajax
在firefox中, 的privacy中的"历史记录信息" history: 1.Remember history; 2. never remember histroy 3. use custom settings for history.(使用自定义历史记录) 在使用custom settings中, 你能够选择接受仍是拒绝cookie, 而且能够设置那些站点能够接受仍是拒绝.
可是要注意, 当禁用cookie的时候, 有些站点是没有办法使用的.shell
因此, 比较好的设置方法是: 使用自定义的settings for history. and always Accept cookies from visited sites , 可是 要设置 : exceptions, 将你不想接收cookies的sites 给 block掉, 其余allow的sites给添加.
why a rpm package is refused to be installed?
Perhaps you have created a repository file /etc/yum.repos.d/rpmfusion-free...repo
manually, then there is not a signing file in /etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-free-fedora-23
in /etc/pki/rpm-gpg, So , RPM/yum/dnf rightfully refused to install the package
A permalink or permanent link is a URL that is intended to remain unchanged for many years into the future, y
解决方法是:
rpm --import http://sourceforge.net/projects/postinstaller/files/data/RPM-GPG-KEY-rpmfusion-free-fedora-18
sudo dnf --nogpgcheck install some_packages
在ls文件的时候, 若是文件中包含一些特殊符号, 如 , 空格等 (), []等, 可能须要用反斜杠 来进行转义
注意的是, 安装rpmfuson free or nofree need to enable EPEL first for EL. 这里说的仅仅是针对 Red hat的企业版及其 企业板的兼容版本, 如centos. 所以, 桌面版的 fedora 是没必要的, 没必要事先启用epel. 从名字上也能够看出, epel is for el and is not necessary for fedora.
dnf 的本地安装, 命令, 也是用 dnf install ...
能够将 rpm-free, rpm-nonfree, 下载并从 /tmp拷贝到 Downloads目录, 而后直接用dnf install安装或 可视化的 software软件会自动弹出并安装.
下载的地址是:
本地安装dnf:
extjs的几个常用的版本:
Extjs 5 beta 版下载连接:http://cdn.sencha.com/ext/beta/ext-5.0.0.736.zip
Extjs 4.2.1 下载连接:http://cdn.sencha.com/ext/gpl/ext-4.2.1-gpl.zip
Extjs 4.0.7 下载连接:http://cdn.sencha.io/ext-4.0.7-gpl.zip
Extjs 3.4.0 下载连接:http://cdn.sencha.com/ext/gpl/ext-3.4.1.1-gpl.zip
Extjs 2.3.0 下载连接:http://dev.sencha.com/deploy/ext-2.3.0.zip
以上是Extjs经常使用的几个开源版本的下载。
只要知道了资源(能够时一个图片, 一个zip压缩文件, 一个安装包等)的地址, 用wget时很方便的获得和 下载的.
w3m的使用方法 参考: http://baike.baidu.com/item/w3m
若是你想高速的/不想看到图片(固然也没有什么图片和flash来打扰你! ), 只须要文本阅读的方式访问网站的时候, 使用w3m是最适合的了. 一些最多见的操做方法是:
参考:http://www.cnblogs.com/iamhenanese/p/5583800.html
w3m的不少操做, 有几个特色, 一是操做大可能是 大写的单字母, 二是, 操做可能是对应单词的首字母, 如 B(back), I(image), L(是列出全部的links), ctrl_h(history)列出全部的历史页面, 另外, 因为w3m是命令行的 浏览器, 因此它的操做跟shell, vi等移动光标的操做方法是一致的.
标签tab操做: 新建标签T, 列出全部的标签, esc-t, 在标签间滚动 {, }.
注意, 这个图片中的 SPC是: space: 空格的意思, space for select/ : 空格表示选择选中的意思
设置w3m的选项: o命令: option , 选中yes,或no,使用enter, 而不要使用spc, 由于那个会下移 一个页面. 好比是否显示行号, 是否改变/自定义设置 页面的背景颜色, 字体颜色, 各类连接的颜色等.
还可使用ctrl-z挂起浏览器, 使用fg能换回到前台.
一般, w3m中不会启用javascript支持, 因此须要js支持的页面可能不能正常浏览或进入, 遇到这种状况时, 可使用 M 命令打开 图形界面的 browser.
sudo = su +do , 就是(将当前用户) 以 su(super用户, 即root)用户, 来执行命令, 来do命令(do就是perform执行)的意思.
sudo有点相似于 selinux, 它规定了用户foo能够执行的 程序的类型, 是针对用户能够执行的命令来 规定的, 而不是(一般不是, 固然你也能够指定命令更详细的参数, 文件对象来限制能够执行的对象,但一般不须要, 不会声明命令执行的对象)规定命令执行的对象. 因此 它是指普通用户以 root的 身份去执行 命令. 就至关于你如今登陆到root用户的了.
因此你就能够执行这些命令了. 由于你是以root用户来执行的, 因此只要是 你 赋予权限的命令, 基本上你是能够执行 这个命令的 任何能够执行的 文件或对象的了
一般, 除了要赋予经常使用的普通用户 如foo, 如安装软件的命令(SOFTWARE) . 以及其余一些在 平常工做中 , 常常用的命令, 以 "FS" file system 文件系统的命令, 如cp, mv
, vi(vi是指以root身份来运行vi命令, 那么当foo用户使用vi命令的时候, 它就能够vi编辑任何文件, 包括 /etc/sudoers, 固然, 由此产生的风险 不是由foo来负责, 而是由 授予foo权限的 root超级管理员来负责的).
abuse: ab-use: [2'bju:z], n. v. 虐待, 滥用, 辱骂等等. suffered abuse, child abuse...
{duration: 1, callback: this.foo, scope: this}
放在函数的一个参数中,如el.setWidth(500, {duration: 1, callback: this.foo, scope: this})
, 也能够把它做为一个单独的对象进行定义: var opt={duration: 1, callback: this.foo, scope: this};
然 后, 在函数中直接使用这个object literal(对象文本, 对象文字). el.setWidth(600,opt);