接下来的这几个博客是对前面所学知识的一个简单的应用,来加深理解
单行文本框
只介绍一个简单的样式:获取和失去焦点改变样式
基本结构:
<form action="#" method="post"> <fieldset> <legend>个人基本信息</legend> <div> <label for="username">名称:</label> <input type="text" /> </div> <div> <label for="pass">密码:</label> <input type="passward" /> </div> <div> <label for="msg">详细信息:</label> <textarea ></textarea> </div> </fieldset> </form>
在CSS中添加一个类为focus的样式
.focus{ border: 1px solid #f00; background: #fcc; }
然后为文本框添加获取和失去焦点事件
$(function(){ $(':input').focus(function(){ $(this).addClass('focus'); }).blur(function(){ $(this).removeClass('focus'); }); });
效果
多行文本框应用
1、高度变化
改变多行文本框的高度
基本结构:
<form action="#" method="POST"> <div> <div> <span>放大</span> <span>缩小</span> </div> <div> <textarea rows="8" cols="20"> 多行文本框,多行文本框,多行文本框,多行文本框,多行文本框,多行文本框,多行文本框,多行文本框,多行文本框,多行文本框,多行文本框,多行文本框,多行文本框,多行文本框,多行文本框,多行文本框,多行文本框,多行文本框,多行文本框, </textarea> </div> </div> </form>
要实现的功能:
1、当单击“放大”按钮后,如果评论框的高度小于500px,则在原有的高度的基础上增加50px
1、当单击“缩小”按钮后,如果评论框的高度大于50px,则在原有的高度的基础上减少50px
添加事件:
$(function(){ var $comment = $('#comment'); $('.bigger').click(function(){ if($comment.height() < 500){ $comment.height( $comment.height() + 50 ); } }); $('.small').click(function(){ if($comment.height() > 50){ $comment.height( $comment.height() - 50 ); } }); });
效果:
2、滚动条高度变化
添加事件:
$(function(){ var $comment = $('#comment'); $('.bigger').click(function(){ if(!$comment.is(':animated')){ $comment.animate({scrollTop : '-=50'},400); } }); $('.small').click(function(){ if(!$comment.is(':animated')){ $comment.animate({scrollTop : '+=50'},400); } }); });
效果:
复选框应用
对复选框的基本应用,就是对复选框进行全选、反选和全部选等操作
基本样式:
<form action="#" method="POST"> <p>你爱好的运动</p> <input type="checkbox" value="足球" />足球 <input type="checkbox" value="篮球" />篮球 <input type="checkbox" value="羽毛球" />羽毛球 <input type="checkbox" value="乒乓球" />乒乓球 <br /> <input type="button" value="全 选" /> <input type="button" value="全不选" /> <input type="button" value="反 选" /> <input type="button" value="提 交" /> </form>
添加全选按钮和全不选事件
$('#CheckedAll').click(function(){ $('[name=items]:checkbox').attr('checked',true); }); $('#CheckedNo').click(function(){ $('[name=items]:checkbox').attr('checked',false); });
添加反选事件
$('#CheckedRev').click(function(){ $('[name=items]:checkbox').each(function(){ this.checked = !this.checked; }); });
添加提交事件:输出选中的值
var str = "你选中的是:\r\n"; $('#send').click(function(){ $('[name=items]:checkbox:checked').each(function(){ str += $(this).val() + "\r\n"; }); alert(str); });
效果:
下拉框应用
基本结构:
<div> <select multiple> <option value="1" >选项1</option> <option value="2" >选项2</option> <option value="3" >选项3</option> <option value="4" >选项4</option> <option value="5" >选项5</option> <option value="6" >选项6</option> <option value="7" >选项7</option> <option value="8" >选项8</option> </select> <div> <span>选中添加到右边>></span><br /> <span>全部添加到右边>></span> </div> </div> <div> <select multiple></select> <div> <span><<选中删除到左边</span><br /> <span><<全部删除到左边</span> </div> </div>
实现的功能:
1、将选中的选项添加给对方
$('#add').click(function(){ var $options = $('#select1 option:selected'); $options.appendTo($('#select2')); });
2、全部的选项添加给对方
$('#add_all').click(function(){ var $options = $('#select1 option'); $options.appendTo($('#select2')); });
3、双击某个按钮将其添加给对方
$('#select1').dblclick(function() { var $options = $('option:selected'); $options.appendTo($('#select2')); });
效果:
表单应用
基本结构: