HTML:

<div id="navbar">
<div id='navbar_content' style="left:0px;">
<div class="channel active">
<span>shouye</span>
</div>
<div class="channel">
<span>shouyeshouye</span>
</div>
<div class="channel">
<span>shouyeshouyeshouyeshouyes</span>
</div>
<div class="channel">
<span>shouye</span>
</div>
<div class="channel">
<span>shouye</span>
</div>
<div class="channel">
<span>shouye</span>
</div>
<div class="channel">
<span>shouye</span>
</div>
<div class="channel">
<span>shouye</span>
</div>
<div class="channel">
<span>shouye</span>
</div>
</div>
</div>
</div>

CSS:

#navbar{
background: rgba(247,247,247,0.95);
overflow: hidden;
position: relative;
text-align: center;
font-size: 1em;
padding-left: 5px;
line-height: 28px;
}
#navbar_content{
font-size: 1em;
text-align: left;
white-space: nowrap;
position: relative;
}
.channel{
vertical-align: top;
display: inline-block;
padding: 0 5px;
color: rgba(0,0,0,0.6);
font-weight: normal;
line-height: 26px;
border-bottom: 2px solid transparent;
}
.channel.active {
color: #1c88cd;
border-color: #1c88cd;
}

JS:

 $(function(){
console.log($('#navbar').width())
var total_width=0;
var div_arr=$('.channel');
for(var i=0,len=div_arr.length;i<len;i++){
total_width+=div_arr[i].offsetWidth;
}
console.log(total_width); var x,old_left;
$('#navbar_content')
.live('touchstart', function(e) {
console.log(e.originalEvent.pageX)
x = e.originalEvent.targetTouches[0].pageX // anchor point
old_left = parseInt(e.currentTarget.style.left);
})
.live('touchmove', function(e) {
var change = e.originalEvent.targetTouches[0].pageX - x;
e.currentTarget.style.left = (old_left+change)+"px";
})
.live('touchend', function(e) {
var left = parseInt(e.currentTarget.style.left);
var new_left;
var window_width=document.body.scrollWidth;
if (left < parseInt("-"+total_width)+$('#navbar').width()+100) {
new_left = "-"+(total_width-$('#navbar').width()+100);
}else if (left > 0) {
new_left = '0'
}
$(e.currentTarget).animate({left: new_left}, 500);
e.currentTarget.style.left = new_left; }); });

用jquery来实现类似“网易新闻”横向标题滑动的移动端页面的更多相关文章

  1. IOS 类似网易新闻客户端内容滚动菜单跟随居中组件

    需求分析: 1.类似网易新闻客户端页面滚动组件.菜单栏对应菜单项一直居中 2.点击菜单栏可以切换到对应的page 3.滑动页面可以自动切换相应的菜单.并且对应的菜单栏居中显示 4.初始化时可以自定义菜 ...

  2. 多个UITableView横向切换的简单实现(有点类似网易新闻)

    实现多列表切换,位置监控,置顶等功能. 方法一: 创建一个TableView,在切换的时候请求各类目需要的数据,然后刷新列表,通过动画模拟出滑动效果. #import <UIKit/UIKit. ...

  3. 类似网易新闻 title栏 滚动时 文字放大&变色

    http://files.cnblogs.com/files/n1ckyxu/ScrollTitleView.zip

  4. 类似掌盟的Tab页 Android 开源框架ViewPageIndicator 和 ViewPager 仿网易新闻客户端Tab标签 (转)

    原博客地址  :http://blog.csdn.net/xiaanming/article/details/10766053 本文转载,记录学习用,如有需要,请到原作者网站查看(上面这个网址) 之前 ...

  5. xamarin.forms之使用CarouselView插件模仿网易新闻导航

    在APP中基本都能见到类似网易.今日头条等上边横向导航条,下边是左右滑动的页面,之前做iOS的时候模仿实现过,https://github.com/ywcui/ViewPagerndicator,在做 ...

  6. Android(java)学习笔记206:利用开源SmartImageView优化网易新闻RSS客户端

    1.我们自己编写的SmartImageView会有很多漏洞,但是我们幸运的可以在网上利用开源项目的,开源项目中有很多成熟的代码,比如SmartImageView都编写的很成熟的 国内我们经常用到htt ...

  7. iOS动画案例(2) 仿网易新闻标题动画

      由于产品的需要,做了一个和网易新闻标题类似的动画效果,现在新闻类的APP都是采用这样的动画效果,来显示更多的内容.先看一下动画效果:   由于这个动画效果在很多场合都有应用,所以我专门封装了一个控 ...

  8. <转>如何在iOS 7中设置barTintColor实现类似网易和 Facebook 的 navigationBar 效果

    转自:i‘m Allen的博客 先给代码:https://github.com/allenhsu/CRNavigationController 1. 问题的表现 相信很多人在 iOS 7 的适配过程中 ...

  9. 动态权限<二>之淘宝、京东、网易新闻 权限申请交互设计对比分析

    移动智能设备的快速普及,给生活带来巨大的精彩,但是智能设备上用户的信息数据很多,隐私数据也非常多,各种各样的app可能通过各种方式在悄悄的收集用户数据,而用户的隐私就变得耐人寻味了.比如之前的可以无限 ...

随机推荐

  1. ZSTU4270 同源数 2017-03-22 14:34 82人阅读 评论(0) 收藏

    4270: 同源数 Time Limit: 3 Sec  Memory Limit: 128 MB Submit: 1284  Solved: 224 Description 如果x和y的质因子集合完 ...

  2. MFC中的一般经验之谈----OnInitialUpdate

    在MFC程序设计中,按照传统的设计,如果处理WM_PAINT消息,一般会派生一个OnPaint函数,映射到WM_PAINT消息上进行绘图处理.但是很多程序中并没有出现OnPaint,一个OnDraw函 ...

  3. 安装Greenplum-perfmon-web监控软件遇到的问题及解决

    环境 Product Version Pivotal Greenplum (GPDB) 4.3.x Pivotal Greenplum Command Center (GPCC)   Others   ...

  4. 调整Linux最大打开文件数

    #!/bin/bash ## 文件数限制 ulimit -n ulimit -Sn ulimit -Hn ## fs.nr_open,进程级别 ## fs.file-max,系统级别 ## 最大文件描 ...

  5. gitignore 使用

    在git中如果想忽略掉某个文件,不让这个文件提交到版本库中,可以使用修改根目录中 .gitignore 文件的方法(如无,则需自己手工建立此文件).这个文件每一行保存了一个匹配的规则例如: # 此为注 ...

  6. 关于My Sql update语句不能用子查询的解决办法

    在使用My Sql数据库语法操作update时,第一时间想到的是一下写法: UPDATE purchase_request_detail SET convert_to_voucher_id=, con ...

  7. 纸壳CMS 3.0升级.Net Core 2.1性能大提升

    微软发布了.Net Core 2.1正式版,纸壳CMS也在第一时间做了升级,并做了一系列的优化和调整,性能大幅提升,并解决了一些历史遗留问题,添加了一些新功能. Github https://gith ...

  8. cesium随笔 — 简单实现获取三维范围(包括相机高度)

    代码 // 获取当前三维范围 function getCurrentExtent() { // 范围对象 var extent = {}; // 得到当前三维场景 var scene = viewer ...

  9. Working Set

    类似于Visual Studio中的Solution 如果Eclipse中的project过多,而且不是同一个真实的项目中的,可以按Working Set对project进行组织,只是一个逻辑组织 操 ...

  10. AndroidSDK下载

    C:\Windows\System32\drivers\etc\hosts74.125.237.1 dl-ssl.google.com