炒冷饭系列之IE Bug(2) —— 双倍Margin

这是IE6的一个渲染Bug,主要是出现在一个具有float与margin且方向一致的盒子模型上。为便于演示,我创建两个盒子,以外面的盒子左边界作为基准线来看看里面的盒子位置问题。上代码:

html代码

<div id="container">
<div id="box"></div>
</div>

继续阅读炒冷饭系列之IE Bug(2) —— 双倍Margin

炒冷饭系列之IE Bug(1) —— 浮动列表阶梯Bug

不知道从哪开始,就想到什么写什么吧。浮动列表阶梯BUG主要出现在IE6、IE7中,再低版本就不在此系列讨论范围内了。直接看例子:

html部分:

<ul id="nav">
	<li><a href=""></a></li>
	<li><a href=""></a></li>
	<li><a href=""></a></li>
	<li><a href=""></a></li>
</ul>

继续阅读炒冷饭系列之IE Bug(1) —— 浮动列表阶梯Bug

JavaScript变量声明提升以及函数提升

先从变量声明提升说起,变量的声明在其作用域内会被提升到最顶端,无论变量在作用域内的何处声明都是一样效果。看实例:

?View Code JAVASCRIPT
(function inner() {
    console.log(v);
    var v = 3;
}())

会输出什么呢?答案是”undefined”。有些人也会认为是”undefined”,但是他们可能觉得是这样的,js代码从上向下加载读取,当读取到console这行的时候还没见到下面的var v = 3 这行,所以理当是”undefined”。其实这样是不对的想法。参照我之前说的变量声明,这段代码在解释运行的时候其实是这样的: 继续阅读JavaScript变量声明提升以及函数提升

新手学做Javascript原生版焦点轮播图补充

在上一个轮播图教程里(新手学做Javascript原生版焦点轮播图)我们只是实现了最简单的图片轮播,而一个完整的焦点轮播图还应该包括说明文字、指示数字与图片的同步轮播。当然,我们就在上一篇创建的代码基础上添加修改。因为是新手教程,便于理解,我尽可能地简单化,在此不考虑性能问题。

实现效果:三张图片轮流播放,指示数字、说明文字与图片同步轮播,当鼠标处于轮播图上时使其停止轮播,离开图片区再度实现轮播。并且当鼠标位于数字上时立即切换到相对应的图片、文字。 继续阅读新手学做Javascript原生版焦点轮播图补充

javascript常用正则表达式

转载自网络上,方便查询、学习。

整数或者小数:^[0-9]+\.{0,1}[0-9]{0,2}$
只能输入数字:”^[0-9]*$”。
只能输入n位的数字:”^\d{n}$”。
只能输入至少n位的数字:”^\d{n,}$”。
只能输入m~n位的数字:。”^\d{m,n}$”
只能输入零和非零开头的数字:”^(0|[1-9][0-9]*)$”。 继续阅读javascript常用正则表达式

新手学做Javascript原生版焦点轮播图

焦点图算是javascript的一个常用特效,很多人面试时都会被问到焦点图的实现方法,而对于入门新手来说,并不容易,起码我是这样的。今天就教新手们做一个最简单的焦点轮播图,也让自己巩固一下。

实现效果:三张图片轮流播放,当鼠标处于轮播图上时使其停止轮播,离开图片区再度实现轮播。

实现方法:html中只放置一个img标签,js里创建一个含有三张图片路径的数组,使用setInterval()方法按照指定周期调用数组里的图片路径替换到img标签的src属性里。当然还需要一个鼠标的onmouseover与onmouseout事件来切换是否轮播。
继续阅读新手学做Javascript原生版焦点轮播图

Jquery里get()和eq()的区别

写点笔记记录下自己曾经学习中的困惑,大神飘过……

很多初学者一开始都会搞不明白get()与eq()的区别,甚至会将他俩混为一谈。虽然两者得到的都是DOM节点,但区别在于get()得到的是javascript原生DOM节点,而eq()得到的是Jquery包裹的DOM节点。也就是要操作get()获取的DOM节点就必要用javascript的原生方法,而操作eq()获取的节点可以直接使用jquery封装的方法函数。如果要让get()获取的节点也能够使用jquery方法函数的话就必须将其包裹在 $() 里实现转换。

废话一堆,举个例子先: 继续阅读Jquery里get()和eq()的区别