jquery仿百度经验滑动切换浏览效果


Posted in Javascript onApril 14, 2015

jquery仿百度经验滑动切换浏览效果

$(function() {
  wordStrong();
  $("#content ul").width($("#content ul li:first").width()*$("#content ul li").length);
  $("#header .top_right .vote").hover(function() {
    $(this).children(".hover-tip").css("display", "block");
    $(this).children(".num").css("display", "none");  
  }, function() {
    $(this).children(".hover-tip").css("display", "none");
    $(this).children(".num").css("display", "block");  
  });
   
   
  $("#content .left, #content .right").width(($(document).width()-$("#content").width())/4);
  $("#content .left").css("left", -$("#content .left").width());
  $("#content .right").css("right", -$("#content .right").width());
   
  var showId = 0;
  $("#content span.left").hover(function() {
    if ( checkFirst() ) return ;
    $(this).css("cursor", "pointer");
    $(this).siblings(".sl").stop().animate({
      opacity:0.5 
    }); 
  }, function() {
    $(this).siblings(".sl").stop().animate({
      opacity:0
    }); 
  }).click(function() {
    if ( checkFirst() ) return ;
    showId --;
    $("#content").attr("showId", showId);
    $("#footer li").children().removeClass("active").end().children().eq(showId).addClass("active");
    center(showId);
  });
   
  $("#content span.right").hover(function() {
    if ( checkLast() ) return ;
    $(this).css("cursor", "pointer");
    $(this).siblings(".sr").stop().animate({
      opacity:0.5
    }); 
  }, function() {
    $(this).siblings(".sr").stop().animate({
      opacity:0
    }); 
  }).click(function() {
    if ( checkLast() ) return ;  
    showId ++;   
    $("#content").attr("showId", showId);
    $("#footer li").children().removeClass("active").end().children().eq(showId).addClass("active");
    center(showId); 
  });
   
  function checkFirst() {
    if ( $("#content").attr("showId") == 0 ) {
      $("#content span.left").css("cursor", "default");
      return true;    
    }
    return false;
  }
   
  function checkLast() {
    if ( $("#content").attr("showId") == $("#content ul li").length-1 ) {
      $("#content span.right").css("cursor", "default");
      return true;    
    }
    return false;  
  }
     
  /* 首字母大写 */
  function wordStrong() {
    var liList = $("#content ul li");
    for (var j = 0; j < liList.length; j ++) {
      var pList = $("#content .cont_"+(j+1)+" .cont_word p");
      for (var i = 0; i < pList.length; i ++) {
        var p = pList.get(i);
        var pCont = $(p).html();    
        var s = $("<b>"+(i+1)+"</b>");
        s.css("font-size", "24px");   
        $(p).html('');
        s.appendTo(p);
        $(p).append(pCont.substring(1));    
      }
    }
  }  
   
  center(0);
   
  //相对li居中
  function center(liIndex) {
    var li = $("#content ul li").css("opacity", 0.3).eq(liIndex).css("opacity", 1);
    $("#content ul").animate({
      left: (-li.width()*liIndex)
    });
  }
   
  var footLen = $("#content ul li").length;
  var foots = $("#footer ul");
  for (var i = 1; i < footLen-1; i ++) {
    var childA = $("<a>").html(i);
    childA.attr("href", "#");
    $("<li>").append(childA).insertBefore(foots.children("[step=last]")).attr("step", i);   
  }
  foots.children(":last").attr("step", footLen-1);
  foots.css("left", ($(window).width()-foots.width())/2); 
  $("#footer li").click(function() {
    $("#footer ul li").children().removeClass("active");
    $(this).children().addClass("active");
    center($(this).attr("step"));
  });
   
  function myAddEvent(obj, e, fn) {
    if ( obj.attachEvent ) {
      obj.attachEvent('on'+e, fn);
    }else obj.addEventListener(e, fn, false);
  }
   
  function onMouseWheel(ev) { 
    var ev = ev||event;   
    //IE
    //wheelDelta  下滚:负, 上滚:下
    //alert(oEvent.wheelDelta);
    //FF
    //detail:  下滚:正, 上滚: 负
    //alert(oEvent.detail)   
    var bDown = true;
    if ( ev.wheelDelta ) {
      bDown = ev.wheelDelta<0;
    }else {
      bDown = ev.detail>0;
    }    
    if ( !bDown ) {
      if ( checkFirst() ) return ;
      showId --;     
    }
    else {
      if ( checkLast() ) return ;
      showId ++;     
    }
    $("#content").attr("showId", showId);
    $("#footer ul li").children().removeClass("active").end().eq(showId).children().addClass("active");
    center(showId);
    if ( oEvent.preventDefault ) {
      oEvent.preventDefault();
    }
    return false;
  }
   
  myAddEvent(window, 'mousewheel', onMouseWheel);
  myAddEvent(window, 'DOMMouseScroll', onMouseWheel);
});

以上所述就是本文给大家介绍的全部内容了,希望大家能够喜欢。

Javascript 相关文章推荐
JQUBar 基于JQUERY的柱状图插件
Nov 23 Javascript
JQuery实现表格中相同单元格合并示例代码
Jun 26 Javascript
jQuery图片轮播的具体实现
Sep 11 Javascript
聊一聊JavaScript作用域和作用域链
May 03 Javascript
RequireJS 依赖关系的实例(推荐)
Jan 21 Javascript
基于jQuery封装的分页组件
Jun 26 jQuery
js replace 全局替换的操作方法
Jun 12 Javascript
Layui 数据表格批量删除和多条件搜索的实例
Sep 04 Javascript
防止Layui form表单重复提交的实现方法
Sep 10 Javascript
javascript设计模式 ? 组合模式原理与应用实例分析
Apr 14 Javascript
vue-simple-uploader上传成功之后的response获取代码
Sep 07 Javascript
javascript实现拼图游戏
Jan 29 Javascript
jQuery获得子元素个数的方法
Apr 14 #Javascript
jQuery简单实现遍历数组的方法
Apr 14 #Javascript
jquery插件orbit.js实现图片折叠轮换特效
Apr 14 #Javascript
jQuery遍历页面所有CheckBox查看是否被选中的方法
Apr 14 #Javascript
jquery+html5制作超酷的圆盘时钟表
Apr 14 #Javascript
JavaScript将字符串转换为整数的方法
Apr 14 #Javascript
使用javascript实现判断当前浏览器
Apr 14 #Javascript
You might like
PHP查询并删除数据库多列重复数据的方法(利用数组函数实现)
2016/02/23 PHP
php实现三级级联下拉框
2016/04/17 PHP
PHP设计模式(七)组合模式Composite实例详解【结构型】
2020/05/02 PHP
不懂JavaScript应该怎样学
2008/04/16 Javascript
jQuery使用动态渲染表单功能完成ajax文件下载
2013/01/15 Javascript
jquery实现固定顶部导航效果(仿蘑菇街)
2013/03/21 Javascript
js传中文参数controller里获取参数乱码问题解决方法
2014/01/03 Javascript
js对图片base64编码字符串进行解码并输出图像示例
2014/03/17 Javascript
通过jquery 获取URL参数并进行转码
2014/08/18 Javascript
每天一篇javascript学习小结(基础知识)
2015/11/10 Javascript
Javascript中的prototype与继承
2017/02/06 Javascript
Angular2利用组件与指令实现图片轮播组件
2017/03/27 Javascript
JS仿QQ好友列表展开、收缩功能(第二篇)
2017/07/07 Javascript
JavaScript模拟实现自由落体效果
2018/08/28 Javascript
在微信小程序中渲染HTML内容的方法示例
2018/09/28 Javascript
vue全局自定义指令-元素拖拽的实现代码
2019/04/14 Javascript
Python实现的快速排序算法详解
2017/08/01 Python
Python基于回溯法子集树模板解决选排问题示例
2017/09/07 Python
基于Python中单例模式的几种实现方式及优化详解
2018/01/09 Python
对python中Json与object转化的方法详解
2018/12/31 Python
Django实现随机图形验证码的示例
2020/10/15 Python
Python3.9最新版下载与安装图文教程详解(Windows系统为例)
2020/11/28 Python
详解Python模块化编程与装饰器
2021/01/16 Python
CSS3 :not()选择器实现最后一行li去除某种css样式
2016/10/19 HTML / CSS
Blue Nile中国官网:全球知名的钻石和珠宝网络零售商
2020/03/22 全球购物
explicit和implicit的含义
2012/11/15 面试题
解释一下钝化(Swap out)
2016/12/26 面试题
建筑自我鉴定
2013/10/19 职场文书
《盘古开天地》教学反思
2014/02/28 职场文书
房地产活动策划方案
2014/05/14 职场文书
找工作求职信
2014/07/07 职场文书
企业贷款委托书格式
2014/09/12 职场文书
2015年乡镇扶贫工作总结
2015/04/08 职场文书
Python常遇到的错误和异常
2021/11/02 Python
Linux安装apache服务器的配置过程
2021/11/27 Servers
浅谈css实现背景颜色半透明的两种方法
2021/12/06 HTML / CSS