jQuery侧边栏固定
<!DOCTYPE html>
<html> <head>
<meta charset="UTF-8">
<title></title>
<style>
#top_head {
width: 100%;
height: 253px;
background: gray;
} #middle_right_list {
width: 70%;
height: 1800px;
background: #0000FF;
float: left;
} #middle_left {
width: 30%;
height: 300px;
float: left;
} #middle_left_list {
width: 100%;
height: 300px;
background: #003580;
background-image: url(../../CS/布局属性全接触/img/1.jpg);
/*transition: top .03s ease-in;*/
} #middle_content {
position: relative;
} #middle_content:after {
content: '';
display: block;
clear: both;
overflow: hidden;
} #foot {
width: 100%;
height: 200px;
background: #004099;
}
body,html{
padding: 0;
margin: 0;
}
</style>
<script>
function getByID(idname) {
var ob = document.getElementById(idname);
return ob;
}
window.addEventListener('scroll', function() {
//获取滚动高度
var scrolHight = document.body.scrollTop;
var middle_left = getByID('middle_left_list');
var contentHeight = getByID('middle_right_list').offsetHeight - middle_left.offsetHeight;
console.log(contentHeight);
if (scrolHight > 253 && scrolHight < (contentHeight + 253)) {
//改变CSS
middle_left.style.position = 'absolute';
middle_left.style.top = (scrolHight - 253) + 'px';
middle_left.style.left = '0px';
middle_left.style.width = '30%'; } else if (scrolHight <= 253) {
middle_left.style.position = 'static';
middle_left.style.width = '100%';
}
}) // window.onscroll = function() {
//
// }
</script>
</head> <body>
<div class="container">
<div id="top_head">头部</div>
<div id="middle_content">
<div id="middle_left">
<div id="middle_left_list">左菜单</div>
</div>
<div id="middle_right_list">课程列表</div>
</div>
<div id="foot">底部</div>
</div>
</body> </html>
jQuery实现:
<!DOCTYPE html>
<html> <head>
<meta charset="UTF-8">
<title></title>
<style>
#top_head {
width: 100%;
height: 253px;
background: gray;
} #middle_right_list {
width: 70%;
height: 1800px;
background: #0000FF;
float: left;
} #middle_left {
width: 30%;
height: 300px;
float: left;
} #middle_left_list {
width: 100%;
height: 300px;
background: #003580;
background-image: url(../../CS/布局属性全接触/img/1.jpg);
/*transition: top .03s ease-in;*/
} #middle_content {
position: relative;
} #middle_content:after {
content: '';
display: block;
clear: both;
overflow: hidden;
} #foot {
width: 100%;
height: 200px;
background: #004099;
} body,
html {
padding: 0;
margin: 0;
}
</style>
<script src="../jquery-2.2.4.min.js"></script>
<script>
$(window).scroll(function() {
var scrollHeight = $(window).scrollTop();
var topHeight = $('#top_head').height();
var slideHeight = $('#middle_left').height();
var contentHeight = $('#middle_content').height() - slideHeight;
console.log(scrollHeight);
console.log('max:'+ (contentHeight + topHeight));
if(scrollHeight > contentHeight + topHeight) {
scrollHeight = contentHeight + topHeight;
}
if (scrollHeight > topHeight && scrollHeight <= contentHeight + topHeight) {
$('#middle_left_list').css({
"position": "absolute",
"top": scrollHeight - topHeight + 'px',
"left": 0,
"width": '30%'
});
} else if (scrollHeight <= topHeight) {
$('#middle_left_list').css({
"position": "absolute",
"top": 0,
"left": 0,
"width": '30%'
}); }
})
</script>
</head> <body>
<div class="container">
<div id="top_head">头部</div>
<div id="middle_content">
<div id="middle_left">
<div id="middle_left_list">左菜单</div>
</div>
<div id="middle_right_list">课程列表</div>
</div>
<div id="foot">底部</div>
</div>
</body> </html>
jQuery侧边栏固定的更多相关文章
- jquery 导航固定的一个实例
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- jquery的固定定位效果
今天做了个固定定位的效果.比如对导航需要进行固定定位效果: 当没有滚动到导航下面,导航正常显示. 当滚动到导航下面,导航就固定到顶部. 这个效果使用了jquery的方法实现,具体思路为: 1)首先获取 ...
- jquery版固定边栏滚动特效
<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>& ...
- Jquery 表格固定表头
网上找了好多现成的.结果没一个能成.只得自己动手. (function($){ $.fn.fixHeader = { init : function(obj){ var p = obj.parent( ...
- FLEX实现两侧边栏固定中间自适应布局
<style type="text/css"> #outer{ display: flex; width: 100%; flex-flow: row nowrap; } ...
- 解决ubuntu侧边栏固定应用单击无反应的问题
Linux下有些绿色软件,不需要安装就可以双击启动,但有些程序在打开后直接在 Launcher 中右键选择 Lock to Launcher ,但是,有时候单击图标后并未启动应用,下面给出解决方法. ...
- jquery 浮动 固定显示
<%@ page contentType="text/html;charset=UTF-8" language="java" %>无标题文档 我爱b ...
- JQuery Mobile - 固定住页面和页脚
在点击页面空白时候,页眉和页脚会隐藏,在页眉和页脚加入以下代码就可以了: data-tap-toggle ="false" 例子: <div data-role=" ...
- 19款绚丽实用的jQuery/CSS3侧边栏菜单
jQuery作为一款主流的JavaScript前端开发框架,深受广告开发者的亲睐,同时jQuery有着不计其数的插件,特别是菜单插件更为丰富,本文将要为大家介绍20个绚丽而实用的jQuery侧边栏菜单 ...
随机推荐
- Android之使用Volley框架在ListView中加载大量图片
1.listview 中的条目要用 Volley 中的 NetworkImageView,如果直接用ImageView也可以,但是要在getView方法中使用url地址设置为imageView的tag ...
- linux内核常识
找到了一个阅读linux源码的在线工具woboq,但是不能很好地用来阅读live555代码. 比如,我们要阅读epoll实现,可以访问此网址:https://code.woboq.org/linux/ ...
- mac 安装phpredis扩展
curl -O https://nodeload.github.com/nicolasff/phpredis/zip/master tar -zxf master cd phpredis-master ...
- android 常见的泄漏内存方法和 leakcanary 使用方法
虽然VM接管了内存分配和回收,但是人类在解决问题的同时也会重新创造出一些新的问题,所以问题永远都解决不了,就产生各种稀奇古怪的就业机会了(跑题跑不停). 无论各种VM用什么算法管理内存, 造成内存泄漏 ...
- 【Spring】初始化Spring IoC容器(非Web应用),并获取Bean
参考文章 Introduction to the Spring IoC container and beans BeanFactory 和ApplicationContext(Bean工厂和应用上下文 ...
- 原来MySQl就是这样工作的!
一.MySQL简单介绍 MySQL是当今最流行的开源数据库管理系统,超过10亿的下载量足可以证明这点.MySQL以其速度.高可靠性.简单易用,广泛应用,一些大型企业也在逐渐应用,如:Faceb ...
- javascript实现图片滚动
闲来无事捣鼓了一个原来的js图片滚动 首先看看 静态页的结构: <body> <a href="javascript: le()">向左</a> ...
- centos7 docker tomcat7
docker run --name=tomcat7_tmp -ti centos7/jdk7 /bin/bash cd /home wget http://apache.fayea.com/tomca ...
- px和em的区别(转)
在国内网站中,包括三大门户,以及“引领”中国网站设计潮流的蓝色理想,ChinaUI等都是使用了px作为字体单位.只有百度好歹做了个可调的表率.而 在大洋彼岸,几乎所有的主流站点都使用em作为字体单位, ...
- ReactiveCocoa信号使用方法
最近研究RAC时都是基于UI控件来使用,对单独的signal没有使用过,最近在网上看到一篇文章是关于RAC单独signal的使用.在学习整理后将个人觉得能帮助用于UI控件的一些signal使用方法记录 ...