仅供参考:

  1. function parentNotRoll($id){
  2. var flg;//标记滚动方向,true-向下,false-向上
  3. var $test = document.getElementById($id);
  4. var eventType = 'mousewheel';
  5. // 火狐是DOMMouseScroll事件
  6. if (document.mozHidden !== undefined) {
  7. eventType = 'DOMMouseScroll';
  8. }
  9. myAddEvent($test,eventType,getData);
  10. function getData(event){
  11. var e = event || window.event;
  12. var scrollHeight = $test.scrollHeight,//元素的全部高度,包括滚动条高度
  13. height = $test.clientHeight,//元素设置的高度
  14. maxHeight = scrollHeight - height,//滚动条可以滚动最大高度
  15. scrollTop = $test.scrollTop;//滚动条的高度
  16. var delta = e.wheelDelta?e.wheelDelta:e.detail;
  17. if(delta < - || delta ==){
  18. flg = true;
  19. }else
  20. if(delta > || delta == -){
  21. flg = false;
  22. }
  23. //判断当滚动向下,并且滚动到边界,就阻止浏览器默认行为,否则就取消阻止默认行为
  24. if(flg && scrollTop >= maxHeight || !flg && scrollTop <= ){
  25. stopDefault();
  26. }
  27. }
  28.  
  29. //兼容绑定事件方法
  30. function myAddEvent(ele,sEvent,getData){
  31. if(ele.addEventListener && !ele.attachEvent){//非IE
  32. ele.addEventListener(sEvent,getData);
  33. }else{//IE
  34. if(document.attachEvent && !document.addEventListener){ //IE8以
  35. ele.attachEvent('on'+sEvent,getData);
  36. }else{ //IE8以上
  37. ele.addEventListener(sEvent,getData);
  38. }
  39. }
  40. }
  41. //阻止默认浏览器动作
  42. function stopDefault(){
  43. var e = arguments.callee.caller.arguments[] || window.event;
  44. if (e.preventDefault){//非IE
  45. e.preventDefault();
  46. //IE中阻止函数器默认动作的方式
  47. } else{//IE
  48. e.returnValue = false;
  49. }
  50. return false;
  51. }
  52. }

调用 parentNotRoll();函数,传入你需要实现滚动的元素ID或类即可实现

  1. parentNotRoll('test');
  2.  

子元素scroll父元素容器不跟随滚动JS实现的更多相关文章

  1. 一个 VUE 组件:实现子元素 scroll 父元素容器不跟随滚动(兼容PC、移动端)

    介绍 我们经常遇到一种情况.当滑动滚动条区域时,子元素滚动条到底部或顶部时就会触发父级滚动条,父级滚动条同理会继续向上触发,直至body容器.这是浏览器默认的滚动行为. 但是很多情况,我们想要子元素滚 ...

  2. jQuery学习笔记---兄弟元素、子元素和父元素的获取

    我们这里主要总结jQuery中对某元素的兄弟元素.子元素和父元素的获取,原声的Javascript代码对这些元素的获取比较麻烦一些,而jQuery正好对这些方法进行封装,让我们更加方便的对这些元素进行 ...

  3. jQuery中兄弟元素、子元素和父元素的获取

    我们这里主要总结jQuery中对某元素的兄弟元素.子元素和父元素的获取,原声的Javascript代码对这些元素的获取比较麻烦一些,而jQuery正好对这些方法进行封装,让我们更加方便的对这些元素进行 ...

  4. WPF XMAL获取元素的父元素,子元素

    /// 获得指定元素的父元素 /// </summary> /// <typeparam name="T">指定页面元素</typeparam> ...

  5. css使子元素在父元素居中的各种方法

    html结构: <div class="parent"> <div class="child"></div> </di ...

  6. margin (子元素远离父元素边框)

    如果父盒子没有设置border框着,那么他的子元素无法利用margin-top 来远离父元素的上边框 如果使用了margin-top会使子元素和父元素一起往下移 (子想离,父不设置border边框 则 ...

  7. ie10中元素超出父元素的宽度时不能自动隐藏

    (从已经死了一次又一次终于挂掉的百度空间人工抢救出来的,发表日期2014-02-21) 今天遇到一个问题,ie10中元素超出父元素的宽度时不能自动隐藏,而其余浏览器却正常显示. 解决方法是,手动给其设 ...

  8. 让子元素在父元素中水平居中align-items

    做案例中,我们会发现让子元素在父元素中垂直居中,要设置margin和padding等,各种设置才能垂直居中 现在可以使用CSS3中的align-items实现 align-items 定义子元素在父元 ...

  9. justify-content 定义子元素在父元素水平位置排列的顺序

    justify-content 定义子元素在父元素水平位置排列的顺序,需要和display:flex使用才会生效. 有五个属性: 1.flex-start(默认值)  左对齐 2.flex-end 右 ...

随机推荐

  1. 前端css规范

    文章整理了Web前端开发中的各种CSS规范,包括文件规范.注释规范.命名规范.书写规范.测试规范等. 一.文件规范 1.文件均归档至约定的目录中(具体要求以豆瓣的CSS规范为例进行讲解): 所有的CS ...

  2. 浏览器通过http协议通过nginx访问ftp服务器上的文件

    1.修改nginx配置文件 2.修改nginx默认目录为ftp默认目录 3.修改成自定义路径后,并修改此目录第一行,修改为root或是nginx用户 4.重新加载 cd /usr/local/ngin ...

  3. streamsets rest api 转换 graphql

    原理很简单,就是使用swagger api 生成schema 然后代理请求处理api 调用 参考项目 https://github.com/rongfengliang/streamsets-graph ...

  4. 针对 FastAdmin 2018-01-19 号的升级 SQL (废)

    FastAdmin 在 2018-01-19 升级增加了以下功能. 新增前台会员模块和API会员模块 新增后台会员管理.会员规则和会员分组管理 新增短信发送的行为事件 新增前台Token.短信.日志模 ...

  5. JavaScript中类似PHP的uniqid()方法

    JavaScript中类似PHP的uniqid()方法: function generateUIDNotMoreThan1million() { return ("0000" + ...

  6. jmeter测试TCP服务器/模拟发送TCP请求

    jmeter测试TCP服务器,使用TCP采样器模拟发送TCP请求. TCP采样器:打开一个到指定服务器的TCP / IP连接,然后发送指定文本并等待响应. jmeter模拟发送TCP请求的方法: 1. ...

  7. sqlvarchar后自动填充空格解决办法(SET ANSI_PADDING)

    SET ANSI_PADDING http://www.yesky.com/imagesnew/software/tsql/ts_set-set_2uw7.htm http://www.makaido ...

  8. 论战大数据----胖子哥的PK之旅(一)

    胖子哥(1106110976) 9:35:36 http://www.cnblogs.com/hadoopdev/p/3531963.htmlnosqlt数据库-肖(380594863) 9:38:0 ...

  9. bzoj1876 SuperGCD

    Description Sheng bill有着惊人的心算能力,甚至能用大脑计算出两个巨大的数的GCD(最大公约 数)!因此他经常和别人比赛计算GCD.有一天Sheng bill很嚣张地找到了你,并要 ...

  10. ASP.NET Web Pages:发布网站

    ylbtech-.Net-ASP.NET Web Pages:发布网站 1.返回顶部 1. ASP.NET Web Pages - 发布网站 学习如何在不使用 WebMatrix 的情况下发布 Web ...