自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(87)
  • 资源 (2)
  • 收藏
  • 关注

翻译 为翻译Learning jQuery而作

翻译的版本是Learning jQuery 3rd,这一版是以jQuery1.6为基础的,目前虽然已经出了2.0版本了,但是方法等核心思想变化不大,一直都在变,入门后,学会查相对版本的api就好了。

2013-08-28 23:02:14 804

原创 CommonJS,AMD,RequireJS的区别

RequireJS实现了AMD的API.CommonJS是使用exports对象来定义模块的一种方法,它定义了模块的内容。简单地实现一个CommonJS的定义就像下面这样:// someModule.jsexports.doSomething = function() { return "foo"; };//otherModule.jsvar someModule = requ

2014-12-21 22:56:51 4172

原创 IE6IE7没有console对象

周六的下午正在悠哉悠哉看看视频,突然op在群里大喊,出来个前端私聊。然后我一问,结果是过去8个小时网站的200请求数量降低了20%,而且一直没有升上来。我擦,周六上午我刚刚上线代码的啊,怎么个情况,赶紧回滚,回滚以后,请求正常了。这到底是怎么个情况,页面pv降低了大概19%,怎么回事。我把代码推到测试机测试一下,发现就是下面的语句造成的:console.log('test')。IE6

2014-12-20 16:19:17 2633

原创 如何获取隐藏元素的宽度

直接上代码: console.log($("#test1").width()); console.log($("#test2").width());这两段输出的结果分别是 0和1400(视浏览器宽度定)这就是display:none和visibility:hidden隐藏元素的区别。visibility:hidden可以做到站位,就是假如你想隐

2014-12-20 15:41:26 2246 1

原创 假如有一个固定高度的div,如何让里面的一个图片垂直居中?

假如有一个固定高度的div,如何让里面的一个图片垂直居中?使用display:table-cell属性就行,直接上代码html:css:div.warp { display: table-cell; vertical-align: middle; height: 148px; background-color:gray; }显示效果: http://jsfiddle.net

2014-12-12 10:56:43 2722

原创 使用nodemon让node自动重启

在我们开发php,java等web项目的时候,修改了项目代码,服务器都会自动重启,让我们的改动生效,但是node并不会这样,必须手动去重启一下,这样很烦人的啊,很浪费时间,于是就有大神开发了自动重启的工具——nodemon,很简单的。npm install -g nodemon在doc下输入上面的,就安装成功了,以后我们启动我们的项目的时候,就输入nodemon server.js

2013-12-13 12:40:15 23977 2

原创 node-webkit解析excel文档

文章位置:https://github.com/Arnoldnuo/learn-nw/blob/master/node-webkit%E8%A7%A3%E6%9E%90excel%E6%96%87%E6%A1%A3.mdnode-webkit可以使用nodejs的那一套的第三方扩展的,所以我们需要先去找一个可以解析excel的第三方扩展去。由于我的windows系统总是无法编译c+

2013-11-10 02:13:59 3610

翻译 (4)事件处理——(14)展示和隐藏高级特点 (Showing and hiding advanced features)

Suppose that we wanted to be able to hide our style switcher when it is not needed. One convenient way to hide advanced features is to make them collapsible. We will allow one click on the label to hi

2013-11-04 22:52:28 1083

原创 java程序无法启动:Unsupported major.minor version 51.0

major.minor version,它相当于一个软件的主次版本号,只是在这里是标识的一个Java Class的主版本号和次版本号。错误原因找到了,需要使用java6编译项目,才可以在sae平台上正常运行。接下来就是如何解决问题了。首先你要下载java6,然后安装上,放心吧java6可以和java7同时安装在电脑上,不用担心冲突的问题,只要安装的时候目录不哟啊冲突就好了。然后打开eclipse,选择preferences->java->install jres 点击 add,然后把选择stander

2013-10-30 20:36:53 7517 3

翻译 (4)事件处理——(13)复合方法(Compound events)

大部分jquery事件处理方法和原生的DOM方法相对应。然而少数的一般处理器被添加进来了,用来提供便利和跨浏览器的兼容性。我们曾经很细节的讨论过的.ready()就是其中之一的方法。另外,括.mouseenter(),.mouseleave(),focusin()和focusout()方法,规范化IE的同名事件。两个一般jquery处理器,.toggle()和.hover()被用来当作复合事件处理器,因为他们拦截了用户的连续事件,同时使用多个函数做出反应。

2013-10-27 00:33:57 1645

翻译 (4)事件处理——(12)事件的缩写(Shorthand events)

给一个事件绑定处理器,比如click事件,是一个相当常见的任务,因此jquery提供了一个更加简洁的方法来实现。事件处理快捷方式按照在bind方法中相同的方法工作,但是却可以少输入一些字母。

2013-10-27 00:32:03 2146

翻译 (4)事件处理——(11)更远的巩固(Further consolidation)

我们刚刚完成的代码优化是一个代码重构的例子——修改已经存在的代码,让他们以一种更加高效更加强大的方式实现相同的任务。为了更深入的研究重构的可能,我们看一下绑定到每一个按钮的行为。.removeClass()的参数是可选的,当被省略后,它将移除这个元素的所有的类。我们可以通过这个特点来让我们的代码更加高效,。

2013-10-27 00:28:36 1443

翻译 (4)事件处理——(10)事件处理上下文(Event handler context)

当事件处理器被触发以后,关键词this会指向行为被附加的DOM元素。之前,我们说过,$()可以使用DOM元素作为他的参数,这就是这种能力可以使用的关键因素之一。通过在事件处理器中书写$(this),我们创建了一个相应的jquery对象,然后可以像我们使用css选择器定位了他一样来在上面添加行为。

2013-10-27 00:21:49 1869

翻译 (4)事件处理——(9)让其他按钮可用(Enabling the other buttons)

We now have a Large Printbutton that works as advertised, but we need to apply similar handling to the other two buttons (Defaultand Narrow Column) to make them perform their tasks. This is straightfo

2013-10-26 00:17:39 1522

原创 java中exception的printStackTrace()输出内容转成字符串

通常printStackTrace()能提供更多的信息,我们通常需要其信息去调试程序,但是有时候不方便直接输出,我们更希望把错误信息保存到日志等,这样就需要把.pringStackTrance()的内容编程字符串,这要怎么做呢?其实很简单:StringWriter sw = new StringWriter(); PrintWriter pw = new PrintWriter(s

2013-10-25 23:09:43 13389

原创 springMVC中在过滤器中使用spring bean

难道filter中就不能使用spring bean了吗?当然不可能了,spring提供了解决方法,那就是代理——DelegatingFilterProxy类。

2013-10-25 20:37:33 14776 2

转载 如何高效使用Vim

用vim 快两年了 看过教程也不少,总的来说还是得自己多练习,当自己觉得有需要的时候,再添加功能。这里分享个看过的最好的教程,出自贴吧的某个朋友,写的很好零学会盲打壹配置文件先从最简开始,在 伍级 前别考虑配置插件,千万别硬背命令,千万别直接取用别人的配置文件基本还是长时间待在 insert mode 下,会觉得 vim 也不过尔尔,也不好用,这个时候,编辑效率可能比用原来

2013-10-25 00:33:14 869

原创 html中input上传多个文件

如何使用html上传多个文件呢?我搜索中文怎么也找不到合适的,都是用js动态添加input,然后提交,不能满足我想要的——打开选择文件的窗口后可以一次性选择多个文件。然后我尝试搜索英文"html input file multiple",终于在stackoverflow找到一个文章:http://stackoverflow.com/questions/1175347/how-can-i-sel

2013-10-22 15:55:04 30929 6

翻译 (4)事件处理——(8)一个简单的风格切换器(A simple style switcher)

渐进增强在真实世界中,一个好的we b开发者将使用渐进增强的原则。在js不可用的时候风格切换器应该被隐藏,或者仍然可以通过链接到不同版本的网页来生效。为了这个教学的目的,我们假定所有用户的js功能都被开启了。样式切换器的html标记如下:

2013-10-16 00:26:30 1429

原创 mysql实现随机查询

一、随机查询一条数据。评价:有问题,如果id不是从0开始的话,比如从10000开始自增,那么 SELECT floor(RAND() * (SELECT MAX(id) FROM `table`)) 得到的将是会哟很大概率得到小于10000的值,经过where限定的查询结果将会是所有的查询结果的几率变大,最后limit 1获取的是第一行数据的几率变高。

2013-10-14 00:48:04 9420 3

翻译 (4)事件处理——(7)简单事件(Simple events)

有很多时候,我们想绑定一些事件,而不仅仅是在加载网页的时候触发。正如js允许我们使用<body onload=''>和window.onload监听网页加载事件,他也提供了相似的拦截器用来对用户事件作出反应,比如鼠标的点击事件(onclick),表单元素被修改(onchange)和窗口大小被修改(onresize)。当我们直接绑定到DOM中的元素上的时候,这些拦截器和之前我们描述过的onload有着相似的缺点。因此,jquery对这些方法也提供了高级的处理方法。

2013-10-13 23:58:57 1405

翻译 (4)事件处理——(6)给.ready()回调函数传递一个参数(Passing an argument to the .ready() callback)

在某些场景下,在一个网页上不仅仅使用一个js库可能是很有用的。由于很多库使用$标示符(因为他很短而且很方便),我们需要阻止这些库的冲突。

2013-10-13 23:54:44 2531

原创 在git的Bash下进行复制粘贴

最近在学习git,必然要用到clone啊,但是为毛不能复制粘贴啊,需要一个一个字符的敲clone的网址啊,问题出在哪里呢,如何才能在git的Bash下复制粘贴呢,经过找寻,终于找到了方法。在Bash命令行界面上右键点击左上角,在出现的菜单中点击properties,然后在quickedit上打上对钩,这样就ok了。以后遇到windows命令行不能复制粘贴的事情,这样做就ok了。为什么g

2013-10-12 19:32:53 21653 3

原创 checkstyle之如何配置

在试用checkstyle一段时间后,对其中一些警告,感觉是没有必要的,比如一行的长度不超过80个字符,现在我们的屏幕都是宽屏幕了,没有必要80,120挺合适的,但是要怎么修改呢?经过查询,找到了方法。checkstyle没有提供可视化界面去修改,需要自己修改配置文件,其实很容易的。打开windows->performence->checkstyle选择一个默认的配置文件,导出

2013-10-11 22:32:54 1673

原创 eclipse安装插件checkstyle

最近听说了一个eclipse神器:checkstyle,可以帮助java开发人员规范代码,对我这种有代码洁癖的人来说,这有着不小的魔力啊,必然要安装试一试啊。我最喜欢的安装方式是 输入一个安装网址,自动傻瓜式安装,不喜欢用暴力的复制plugins和features文件夹的方式,也不喜欢用link方法安装。checkstyle安装网址是 http://eclipse-cs.sourcefor

2013-10-11 20:30:17 5902

翻译 (4)事件处理——(5)为代码简洁做的快捷方式(Shortcuts for code brevity)

$(document).ready()结构事实上是调用了我们从一个DOM元素创建的jquery对象的.ready()方法。由于这些相同的任务,$()函数为我们提供了一个快捷方式。当我们把一个函数作为参数传递进去的时候,jquery会隐式调用.ready()方法。

2013-10-11 00:21:39 1181

翻译 (4)事件处理——(4)网页上的多个脚本(Multiple scripts on one page)

window.onload事件只能使用一次,当我们为.onload绑定两个事件以后,第二个将会覆盖掉第一个,有没有想过jquery是怎么处理.onload事件触发两个事件的情况?这一章节就主要讲如何处理页面上多个脚本被触发的情况。

2013-10-11 00:19:41 1176

翻译 (4)事件处理——(3)代码执行的顺序(Timing of code execution)

我们来好好讲一下window.onload和$(document).ready()的区别window.onload事件在文档完全被加载到浏览器的时候执行。这意味着网页上每一个元素已经可以被js操纵了。这对我们写有特色的代码而不用担心加载顺序这一点是一个福利。另一方面,使用$(document).ready()注册的方法在DOM结构完全可以使用的时候被调用。这也意味着所有的元素可以通过我们的脚本来接触到,但是这不意味着所有相关的文件已经被下载下来了。一旦HTML已经被加载而且被解析成DOM树的时候,这段代

2013-10-10 00:21:29 1345

翻译 (4)事件处理——(2)在页面加载的时候执行任务(Performing tasks on page load)

我们已经看到了如何让jquery为加载网页做出反应。$(document).ready()事件处理器可以被用来启动一段代码的函数作用,但是这里还有有一些东西需要讲一下。

2013-10-10 00:16:14 1953

翻译 (4)事件处理——(1)事件处理(Handling Events)

j s有几个内置的方法对用户的操作和其他事件作出反应。为了让一个网页是动态的,而且可响应我们需要驾驭这种能力,以便于我们可以在恰当的时间使用我们目前学到的jquery基数和一会学到的其他技巧。尽管我们可以通过js来做这些事情,jquery扩展增强了基本事件的处理能力,提供了更加优雅的语法,同时让他变的更加强大。

2013-10-10 00:14:58 1506

翻译 (3)选择元素——(17)练习(Exercises)

To complete these exercises, you will need the index.htmlfile for this chapter, as well as the finished JavaScript code as found in complete.js. These files can be downloaded from the Packt Publishing

2013-09-29 23:50:47 1106

翻译 (3)选择元素——(16)延伸阅读(Further reading)

The topic of selectors and traversal methods will be explored in more detail in Chapter 9. A complete list of jQuery's selectors and traversal methods is available in Appendix Cof this book, in jQuery

2013-09-29 23:48:56 877

翻译 (3)选择元素——(15)总结(Summary)

拥有了本章我们讲过的知识后,我们现在可以通过很多方法定位网页上的一串元素。特别的,我们学会了使用基础的css选择器在嵌套的结构中去定位顶部和子级的元素,学会了使用属性选择器为不同类型的链接加上不同的样式,使用定制选择器:odd和:even或者高级选择器:nth-child()给一个表加上交替的条纹,使用链状jquery方法为特定的表格块高亮文本。

2013-09-29 23:47:44 802

翻译 (3)选择元素——(14)接触DOM元素(Accessing DOM elements)

每一个选择器表达式和大部分的jquery方法返回了一个jquery对象。至几乎总是我们想要的,因为它提供了隐式迭代和链锁所用。然而在我们的代码中还有有一些地方我们想要接触到DOM元素。比如,我们可能想让一系列元素可以让其他的js库使用。另外,我们可能需要接触到一个元素的名字,使用DOM元素的属性可以做到这一点。对这些公认很少出现的场景,jquery提供了.get()方法可以由jquery对象引用。我们将使用.get(0)。如果DOM元素是在一个循环中被需要的,我们将使用.get(index)。

2013-09-29 00:10:23 1080

翻译 (3)选择元素——(13)链锁作用(Chaining)

我们探索过的遍历方法范例展示了jquery的链状能力。使用jquery,我们可以选择很多元素组合,然后在他们身上做很多事情,而这只需要一行代码。战中链锁不仅仅让jquery代码变得简洁,而且还能提高在我们重新选择元素时脚本选择元素的性能。

2013-09-28 23:24:52 830

翻译 (3)选择元素——(12)为特定的方块加样式(Styling specific cells)

我们可能想到.next() .nextAll()方法有着类似的东东:.prev() .prevAll()。另外,.siblings()选择了所有的在同一DOM层级的其他的元素,而不管他们是出现在之前选择的元素的前面还是后面。

2013-09-28 14:59:28 1081

原创 从jquery的.filter()方法想到的

最近发现了jquery的.filter()方法,这真是一个很强大的方法,最强大之处在于,他可以接受一个函数作为参数,然后根据函数的返回值判断,如果返回值是true,这个元素将被保留,如果返回值是false,这个元素将被剔除。这就是jquery选择器的过滤器。空说无用,我们展示一下 你好啊,今天及多大了啊 为什么要告诉你如果我们要选择有一个子元素的元素,平常我都是这么写

2013-09-28 14:41:33 1033

翻译 (3)选择元素——(11)DOM遍历方法(DOM traversal methods)

尤其是.filter()方法有着巨大的魔力,因为他可以把一个函数作为参数。这个函数允许我们创建一个复杂的测试用来判断元素是否应该被存放在集合中。比如,让我们假设,我们想要给所有的外部链接添加一个类。jquery对这种场景并没有一个选择器。在没有一个过滤方法的情况下,我们将强迫显式循环遍历每一个元素,分开测试每一个元素。然而通过使用下面的过滤函数,我们仍然依靠jqueyr的隐式迭代,让我们的代码很紧凑:

2013-09-28 14:16:47 1471

翻译 (3)选择元素——(10)表单选择器(form selector)

The capabilities of custom selectors are not limited to locating elements based on their position. For example, when working with forms, jQuery's custom selectors and complementary CSS3 selectors can

2013-09-27 21:57:05 1473

翻译 (3)选择元素——(9)为交替的列加样式(Styling alternate rows)

这一章,我们讲讲jquery的定制选择器,比如:nth-child(),:contains(),原来jquery的选择器这么强大,使用:contains()就可以直接获取到包含某一个文本的DOM节点,不用什么遍历去判断了

2013-09-26 23:27:25 1044

淘宝客链接批量导出工具

淘宝客链接批量导出工具,阿里妈妈已经取消了批量导出的工具,这个工具可以批量导出淘宝客链接。

2014-02-05

我自己用js写的一个超级弱智的网页小游戏

最近学习了js,做事件处理和元素的动态移动的时候突发奇想自己做了一个超级简单的弱智网页游戏,拿出来让大家玩玩,如果有喜欢的人的话,我再优化一下,加入持续时间记录、游戏难度设置、路径多样这些新功能。希望大家不要嘲笑这个超级弱智的小游戏。

2012-08-01

空空如也

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

TA关注的人

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