JS-JQ实现页面滚动时元素智能定位(顶部-其他部位)

  阅读前提:充分理解div的三种定位方式:浮动,相对定位,绝对定位

方法一(顶部)

     原理:直接使用css 进行控制;缺点:不兼容ie6-;

     实现:position:fixed; top:0

方法二(顶部)

     原理:获取页面被卷曲的高度(LEN),复制给 obj.STYLE.TOP=LEN,缺点,效果不是很流畅!

     实现:

     var len=document.documentElement.scrollTop||document.body.scrollTop;

     var obj=document.document.getElementById("id")

     obj.style.top=len     

方法三(各种部位)

         这是在网上找的jq方法,自己也实际动手写了一遍;

        

$.fn.smartFloat = function() {     var position = function(element) {         var top = element.position().top;         var pos = element.css("position");         $(window).scroll(function() {            var scrolls = $(this).scrollTop();             if (scrolls > top) {                 if (window.XMLHttpRequest) {                     element.css({                         position: "fixed",                         top: 0                     }).addClass("shadow");                 } else {                     element.css({                         top: scrolls                     });                     }             }else {                 element.css({                     position: pos,                     top: top                 }).removeClass("shadow");            }         });     };     return $(this).each(function() {         position($(this));                              }); }; 

调用

$(function(){     $("#nav").smartFloat(); }); 

ps:边框加阴影的css代码;
.shadow{-moz-box-shadow:1px 1px 2px rgba(0,0,0,.2); -webkit-box-shadow:1px 1px 2px  rgba(0,0,0,.2); box-shadow:1px 1px 2px rgba(0,0,0,.2);} 
 
时间: 2024-08-24 14:04:28

JS-JQ实现页面滚动时元素智能定位(顶部-其他部位)的相关文章

Javascript页面滚动时导航智能定位

常见的开发页面中可能会有这么一个需求,页面中会有多个模块,每个模块对应一个导航,当页面滚动到某个模块时,对应的模块导航需要加上一个类用于区分当前用户所浏览区域. 假设结构如下: <div class="container"> <div class="wrapper"> <div class="section" id="section1">section1</div> <di

Javascript实现页面滚动时导航智能定位

遇到的问题: 在做官网的时候,需要滚动定位的区块的图片不确定,无法确定用户浏览区域对应的模块导航 之前的解决方案是: 通过定位滚动条的位置来判断用户浏览区域对应的模块导航,这种方法的弊端是,区块的高度不确定时就无法计算滚动条的位置来判断: 优化方案: 页面中会有多个模块,每个模块对应一个导航,当页面滚动到某个模块时,对应的模块导航需要加上一个类用于区分当前用户所浏览区域. 以下是DEMO <!-- html --><div class="container">

js页面滚动时层智能浮动定位实现:

案例展示: 第一个:每个人都有看过的淘宝页面: 案例就不多说了,有兴趣的可以多去找找, 这样的智能浮动效果还是不错的,挺方便. 基本的实现原理: 首先有一个默认状态就是没有滚动的时候,什么事情也不用做,定位可以是absolute,也可以是stati,fixed,relartive 这些都可以.我们主要需要关注的是当浏览器滚动的时候,(要浮动的块)要移除浏览器界面视区的时候,修改其position属性,让其浮动在窗口的上沿显示就可以了.最好的position属性就是fixed了,可以在IE6+和其

js页面滚动浮动层智能定位(jQuery)实现

///js页面滚动浮动层智能定位(jQuery)实现 ///调用:$("#popfloat").smartFloat($("#mainInfo").width() + 21); $.fn.smartFloat = function(width_p) { var position = function(element) { var top = element.position().top, pos = element.css("position")

基于jQ+CSS3页面滚动内容元素动画特效

今天给大家分享一款基于jQ+CSS3页面滚动内容元素动画特效.这是一款基于jQuery+CSS3实现的页面滚动代码.该实例适用于适用浏览器:360.FireFox.Chrome.Safari.Opera.傲游.搜狗.世界之窗. 不支持IE8及以下浏览器. 在线预览   源码下载 实现的代码. html代码: <div class="htmleaf-container"> <div class="container"> <h2 class

jQuery实现页面滚动时智能浮动定位

<!DOCTYPE html><html><head>    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />    <title>jQuery实现页面滚动时层智能浮动定位_前端开发</title>    <style type="text/css">        * { 

aos.js超赞页面滚动元素动画jQuery动画库

插件描述:aos.js是一款效果超赞的页面滚动元素动画jQuery动画库插件.该动画库可以在页面滚动时提供28种不同的元素动画效果,以及多种easing效果.在页面往回滚动时,元素会恢复到原来的状态. 简要教程 aos.js是一款效果超赞的页面滚动元素动画jQuery动画库插件.该动画库可以在页面滚动时提供28种不同的元素动画效果,以及多种easing效果.在页面往回滚动时,元素会恢复到原来的状态. AOS.js 下载          案例演示 安装 可以通过bower来安装aos动画库插件.

页面滚动时出现固定导航

页面滚动时出现固定导航的效果,参考页面有http://v.thea.cn/course/info_358和v.thea.cn. 参考代码如下: <div class="tab-title" style="position: static; top: 0px;"><span class="normal selected">课程介绍</span><span class="normal"&g

使用HTML5的JS选择器操作页面中的元素

上一篇文章介绍了HTML5新增的JavaScript选择器,今晚正式实践一下,使用HTML5的JS选择器操作页面中的元素. 文件命名为:querySelector.html,可在Chrome浏览器中预览效果. 1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>使用HTML5的JS选择器操作页面中的元