您好,欢迎访问一九零五行业门户网

jquery操作动画显示与隐藏效果效果

这次给大家带来jquery操作动画显示与隐藏效果效果,jquery操作动画显示与隐藏的注意事项有哪些,下面就是实战案例,一起来看一下。
这几天在写后台文章的一些页面,为了能得到更好的交互性,需要做一些效果,js无疑使不二之选,但由于浏览器的兼容性一直差强人意,所以选用jquery框架,通过css样式、dom节点以及自身所带函数就可以实现比较好的用户体验,此案例有三个功能点。分别为:
1.利用jquery自身的toggle()函数实现层的隐藏与显示动画;
2.仿新浪、腾讯微博输入框字符动态递减效果(可作为单独的js,引入即可通用);
3.实现几个导航按钮切换不同的内容,类似tab;
以下为所有代码:
<!doctype html public "-//w3c//dtd xhtml 1.0 transitional//en" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd">  <html xmlns="http://www.w3.org/1999/xhtml">  <head>  <meta http-equiv="content-type" content="text/html; charset=utf-8" />  <title>用jquery实现两个table的显示与隐藏</title>  <script type="text/javascript" src="jquery-1.2.6.min.js" language="javascript"> </script>  <style>  /*整体table样式*/  .mainbox {margin:5px 10px;overflow:hidden;zoom:1;_margin:5px;}  .mainnav_title {line-height:40px;height:40px;border-bottom:1px solid #eee;color:#ddd;}  .mainnav_title a {color:#004499;margin:0 5px;padding:4px 7px;background:#efefef;}  .mainnav_title a:hover ,.mainnav_title a.on{background:#498cd0;color:#fff;}  .table_form td{padding-left:12px}  .table_form th span{color:#ff0000}  .table_form th{font-weight:normal; text-align:right;padding-right:10px; color:#777}  .table_form td label{ vertical-align:middle}  .table_form td , .table_form th{padding:8px 0 5px 8px;line-height:22px;}  .table_form tbody td,.table_form tbody th{border-bottom:1px solid #eee; }  .colorpanel tbody td,.colorpanel tbody th{ padding:0;border-bottom: none;}  /*控制文章字数输入样式*/  .textafter{font-weight: 700;font-size: 22px;font-style: italic;color:#ff0000;font-family: constantia, georgia;}  .textcount{font-weight: 700;font-size: 22px;font-style: italic;font-family: constantia, georgia;}  /*文章列表页面样式*/  .article_search{border:1px solid #ffcc33; background-color:#ffffcc;height:46px;margin:10px 0px 10px 0px;line-height:46px;padding:0px 15px 0px 15px;}  .advsetup{background-color:red; height:57px;line-height:57px;}  .search_table a:hover ,.search_table a.on{background:#498cd0;color:#fff;}  .search_table a{margin:5px;padding:5px;height:15px;line-height:15px;}  .search a{color:#004499;margin:0 5px;padding:4px 7px;background:#efefef;}  </style>  <script>  /*控制文章字数输入函数*/  $(function(){  $(td span).addclass('textcount');//页面加载时为所有span标签添加新浪字体样式  })  /*  words_deal函数是一个可以通用的关于仿新浪字符输入的函数,用在网站的文章编辑上可以提高用户的交互性  dom:当前要操作的对象  num:限制字符数量  id:通过传入id值动态添加需要操作的span  */  function words_deal(dom,num,id)  {  var curlength=$(dom).val().length; //获取文本框中输入的文字总数量  if(curlength>num)//判断是否大于限制字符数量  { //如果大于限制级字符数量,获得从0到该限制数量的所有字符串  var totalnum=$(dom).val().substr(0,num);  $(dom).val(totalnum); //将这些字符重新载入文本框,并弹框提示  alert(超过字数限制,多出的字将被截断! );  }  else  {  if(curlength>num-10)  {//如果输入字符为倒数10个字符时改变样式将字体变红  $('.textcount_'+id).addclass(textafter);  }  else  {//否则移除样式  $('.textcount_'+id).removeclass(textafter);  }  $(.textcount_+id).text(num-$(dom).val().length); //如小于限制级字符数量,进行累加计数显示  }  }  //文章列表菜单栏效果控制函数  function fun_search(dom,id){  //控制搜索层显示或隐藏  if(id!=1){  $(.article_search).toggle(fast,function(){  });  }  //控制切换样式  var classname = $(dom).attr(class);  if(classname != 'on'){  $('.search_table a').removeclass('on');  $(dom).addclass('on');  }  }  </script>  </head>  <body>  <!--包含层start-->  <p class="mainbox">  <!--导航栏strat-->  <p id="nav" class="mainnav_title">  <ul>  <a href="javascript:;" onclick="toopen(this,'1');" class="on">添加文章</a>  <a href="javascript:;" onclick="toopen(this,'2');">高级设置</a>  <a href="javascript:;" onclick="fun_search(this,2);">搜索</a>  </ul>  </p>  <!--导航栏end-->  <!--搜索层start-->  <p class="article_search" style="display:none;">  <form id="searchform" action="admin/user/0" method="post">  添加时间:  <input type="text" class="input-text" name="datemin" id="datemin" readonly="readonly"/>  <input type="text" class="input-text" name="datemax" id="datemax" readonly="readonly"/>  <select name="channel_id2" id="channel_id2">  <option value="" >--- 全部栏目 ---</option>  <c:foreach items="${list}" var="list">  <option value="${list.id}">--- ${list.name} ---</option>  </c:foreach>  </select>   <select name="choose">  <option value="" >--- 查询条件 ---</option>  <option value="" >---    id    ---</option>  <option value="" >---   标题   ---</option>  <option value="" >---   简介   ---</option>  <option value="" >---  发布人  ---</option>  </select>   <input type="text" class="input-text" name="txtsearch" size="30"></input>  <input type="submit" class="button" value="搜索"></input>  </form>  </p>  <!--搜索层end-->  <!--第一个p层start-->  <table id="table_1" cellpadding=0 cellspacing=0 width="100%" class="table_form" >  <tr>  <th width="140"><span>*</span> 栏目</th>  <td>  <select name="channel" id="channel">  <option value="" >--- 全部栏目 ---</option>  <c:foreach items="${list}" var="list">  <option value=""></option>  </c:foreach>  </select>  </td>  </tr>  <tr>  <th width="140"><span>*</span> 标题</th>  <td>  <input name="title" id="title" class="input-text"" type="text" size="90" onkeyup="words_deal(this,40,1);"></input>剩余<span class="textcount_1">40</span>个字<br />  </td>  </tr>  <tr>  <th width="140">缩略图:</th>  <td>  <table>  <td>  <input name="txtsmallpic" type="text" id="text" class="input-text" size="45"/>    <input name="btnupdown" type="submit" value="本地上传" class="button"/>    <input name="btnchoose" type="submit" value="站内选择" class="button"/>    <input name="btncut" type="submit" value="裁切" class="button"/>      </td>  <td><img src="thumbnail.ico" style="width:128px; height:128px;" /></td>  </table>  </td>  </tr>  <tr>  <th width="140">自定义属性 </th>  <td>  <input id="chkdiyatrr" type="checkbox" /> 首页头条推荐  <input id="chkdiyatrr" type="checkbox" /> 首页焦点图推荐  <input id="chkdiyatrr" type="checkbox" /> 视频首页每日热点  <input id="chkdiyatrr" type="checkbox" /> 视频首页头条推荐  <input id="chkdiyatrr" type="checkbox" /> 视频首页焦点图  <input id="chkdiyatrr" type="checkbox" /> 首页图片推荐<br></br>  <input id="chkdiyatrr" type="checkbox" /> 栏目首页推荐  <input id="chkdiyatrr" type="checkbox" /> 视频栏目精彩推荐  <input id="chkdiyatrr" type="checkbox" /> 网站顶部推荐  </td>  </tr>  <tr>  <th width="140">tag标签</th>  <td>  <input id="txttag" class="input-text" type="text" size=""/>   (','号分开,单个标签小于12字节)  </td>  </tr>  </table>  <!--第一个p层end-->  <!--第二个p层start-->  <table id="table_2" style="display:none;" cellpadding=0 cellspacing=0 width="100%" class="table_form">  <tr>  <th width="140">附加选项</th>  <td>  <input id="chkdiyatrr" type="checkbox" />   提取第一个图片为缩略图     <input id="chkwatermark" type="checkbox" />  图片是否加水印  </td>  </tr>  <tr><th width="140">分页选项</th>  <td>  <input id="rdomanual" type="radio" class="input-text" /> 手动 (分页符为: #p#分页标题#e# )   <input id="rdoautomatic" type="radio" class="input-text" />  自动 大小:    <input id="txtpage" type="text" style=" width:20px;" />k  </td>  </tr>  <tr>  <th width="140"> 评论选项</th>  <td>  <input id="rdoallow" type="radio" class="input-text"/>  允许评论     <input id="rdoban" type="radio" class="input-text" />  禁止评论  </td>  </tr>  <tr>  <th width="140"><span>*</span> 标题</th>  <td>  <input name="title" class="input-text"" type="text" size="90" id="textarea" onkeyup="words_deal(this,20,2);"/>  剩余<span class="textcount_2">20</span>个字<br />  </td>  </tr>  <tr>  <th width="140"> 文章排序 </th>  <td colspan="2">  <select id="u108" class="u108">  <option selected="" value="默认排序">默认排序</option>  <option value="置顶一周">置顶一周</option>  <option value="置顶一月">置顶一月</option>  <option value="置顶一年">置顶一年</option>  </select>  </td>  </tr>  </table>  <!--第二个p层end-->  </p>  <!--包含层start-->  </body>  <script>  //切换界面  function toopen(dom,id){  var classname = $(dom).attr(class);  if(classname != 'on'){  $('table[id^=table_]').hide();  $('.mainnav_title ul a').removeclass('on');  $('#table_'+id).show();  $(dom).addclass('on');  }  }  //文章列表菜单栏效果控制函数  function fun_search(dom,id){  //控制搜索层显示或隐藏  if(id!=1){  $(.article_search).toggle(fast,function(){  });  }  //控制切换样式  var classname = $(dom).attr(class);  if(classname != 'on'){  $('.search_table a').removeclass('on');  $(dom).addclass('on');  }  }  </script>  </html>
以下是运行的效果图:
相信看了本文案例你已经掌握了方法,更多精彩请关注其它相关文章!
推荐阅读:
jquery实现某门户网站导航页图片拖动排序
jquery实现省份城市滑动切换(附代码)
以上就是jquery操作动画显示与隐藏效果效果的详细内容。
其它类似信息

推荐信息