首页 > 代码库 > 使用jQuery快速高效制作网页交互特效
使用jQuery快速高效制作网页交互特效
jQuery中的事件
1,基础事件
基础事件又包括
a:window事件
在javaScript中的window事件又 window onl oad = fn(); 和onclick 在jQuery中常用的事件有文档就绪事件,对应的方法ready()
$(document).ready(fn(){});
b:鼠标事件
常用的鼠标事件有:
click(fn); 单机鼠标时发生,fn表示绑定的函数
keydown(fn); 鼠标指针移过时,fn表示绑定函数
blur(fn) 鼠标指针移出时,失去焦点时,所执行的函数
比如 最常见的光棒事件
$(function () { //获取所有的li元素 $("li").mouseover(function () { $(this).css("background", "pink"); }); //注册事件 $("li").mouseout(function () { $(this).css("background", ""); }); });
<ul> <li>一个示例</li> <li>二个示例</li> <li>三个示例</li> </ul>
c:键盘事件
键盘事件指当键盘聚焦到Web浏览器时,用户每次按下或者释放按键时所产生的事件常用的键盘有keydown(),keyup(),keypress()
//键盘事件 $("input").keyup(function(event) { var s =event.keyCode; alert(s);
//打印键盘的keycode值
}); <h2>键盘事件</h2>
--
<body> <input /><span id="first">注意用词</span>
--
d:表单事件
表单事件是所有事件中最稳定,且支持最稳定的事件之一,除了用户选取单选框,复选框等产生的click事件外,当元素获得焦点时触发focus事件,失去焦点时触发blur事件
//表单事件 $("input").focus(function () { $("#first").addClass("a"); }) $("input").blur(function () { $("#first").removeClass("a"); }); });
--- <h2>键盘事件</h2> <input /><span id="first">注意用词</span>
e:绑定事件
绑定事件是指为匹配到的元素同事绑定一个或者多个事件,使用bind()方法
语法:bind(type,[data],,fn)
对应的unbind() 解除事件
例如:为一个无序列表绑定光棒效果
$("li").bind({ "mousemove": function () { $(this).css("background", "blue"); }, //鼠标移过 获得焦点 "mouseout": function () { $(this).css("background", ""); }, //鼠标移出失去焦点 click: function () { alert(this.innerHTML); } }).unbind("mouseout mousemove"); //解除事件 }); --<body> <ul> <li>一个示例</li> <li>二个示例</li> <li>三个示例</li> </ul> </body>
2,复合事件
hover()和toggle()方法,这两个方法和 ready()方法相似都是jQuery自定义的方法。
a:hover()方法用于模拟鼠标指针悬停事件
<script src="http://www.mamicode.com/js/jQuery1.11.1.js" type="text/javascript"></script> <script> $(function () { $("#menu").hover(function () { //鼠标悬停事件 改变元素css样式 $("#myacc").css("display", "block"); }, function () { $("#myacc").css("display", "none"); }); }); </script>
通常用在网站导航栏下拉的隐藏效果,相当于鼠标事件的mouseover 和mouseout事件
b:toggle()方法 在1.9以上的jquery都删除了这个事件。
toggle()方法相当于鼠标连续单击事件,执行的fn
$(function () { $("#one").toggle( function () { $("#two").show(); //控制元素显示 }, function () { $("#two").hide(); //控制元素隐藏 } ); });
//产生类似于 导航栏的单击出现再次单击关闭的效果-
3,
a:控制 元素的显示与隐藏
在jQuery中,可以使用【show() hide()】控制元素的的显示和隐藏
属性:【speed】[callback]
speed的默认的值有slow(0.6s) normal(0.4s) fast(0.2s)
前者控制元素显示或隐藏的速度,后者是指元素执行完方法后callback的自定义函数
---- $(function () { $("body").click(function () { $("img").show("slow"); //单击窗体 一图片以slow方式显现出来 }); }); ---- --省略部分代码 <img src="http://www.mamicode.com/1.jpg">
b:相似的方法还有控制元素的淡入淡出分别对应fadein()和fadeout()
对应语法是$(selector).fadein([speed],[callback]) --以淡出的方法控制元素
$(selector).fadeout([speed],[callback])--控制元素淡出
c:改变元素高度的方法
slideDown(),slideUp(),
语法类似
使用jQuery快速高效制作网页交互特效