滚动条

自绘滚动条,滚动条模型,滚动条数据结构 最近作一个东西要自己做一个滚动条,决定用GDI自己绘制一个滚动条,然后加上鼠标键盘响应,做完了总结下滚动条的数据结构/模型,方便以后再用,或者方便有相同需求的同学。 本文讲述如何实现一个滚动条所用到的必要的数据结构和模型,方便自己去绘制一个滚动条,不是滚动条的入门或者使用教程。关键字: 自绘滚动条,滚动条模型,滚动条数据结构,scrollbar data structure  阅读详情

一个简单的jquery滚动条

li{list-style:none;}
ul{margin: 0;padding: 0;}
.scroller{border: 1px solid #f00;overflow: hidden;margin: 0 auto;}
.scroller.scrollStyle1{width: 400px;}
.scroller.scrollStyle1 .scroll_box{height: 209px;}
.scroll_box{float:left;width: 393px;overflow: hidden;position: relative;}
.track{float:right;width: 5px;background: transparent;height: 209px;position: relative;background: #222;}
.thumb{position: absolute;right: 0;top: 0;width: 5px;height: 100px;background: #7e7e7e;border-radius: 20px;}
.scroll_absolute{position: absolute;top: 0;left: 0;right: 0;}
.choose_pla ul{text-align: center;}
.choose_pla ul li span{display:inline-block;*display:inline;*zoom:1;font-size: 16px;color: #1c1c1c;line-height: 30px;border: 2px solid transparent;cursor: pointer;transition: all 300ms ease-in 0s;padding: 0 15px;}
.choose_pla ul li span:hover ,.choose_pla ul li span.on{border: 2px solid #278add;color: #278add;}
<div class="scroller clearfix scrollStyle1 cc">
    <div class="track"><span class="thumb"></span></div>
    <div class="scroll_box">
        <div class="scroll_absolute">
            <div class="choose_pla">
                <ul>
                    <li><span>宁波教育资源公共服务平台</span></li>
                    <li><span>天津和平区教育资源公共服务平台</span></li>
                    <li><span>济南教育资源公共服务平台</span></li>
                    <li><span>莱芜教育资源公共服务平台</span></li>
                    <li><span>宁波教育资源公共服务平台</span></li>
                    <li><span>宁波教育资源公共服务平台</span></li>
                    <li><span>天津和平区教育资源公共服务平台</span></li>
                    <li><span>济南教育资源公共服务平台</span></li>
                    <li><span>莱芜教育资源公共服务平台</span></li>
                    <li><span>宁波教育资源公共服务平台</span></li>
                    <li><span>宁波教育资源公共服务平台</span></li>
                    <li><span>天津和平区教育资源公共服务平台</span></li>
                    <li><span>济南教育资源公共服务平台</span></li>
                    <li><span>莱芜教育资源公共服务平台</span></li>
                    <li><span>宁波教育资源公共服务平台</span></li>
                    <li><span>宁波教育资源公共服务平台</span></li>
                    <li><span>天津和平区教育资源公共服务平台</span></li>
                    <li><span>济南教育资源公共服务平台</span></li>
                    <li><span>莱芜教育资源公共服务平台</span></li>
                    <li><span>宁波教育资源公共服务平台</span></li>
                    <li><span>宁波教育资源公共服务平台</span></li>
                    <li><span>天津和平区教育资源公共服务平台</span></li>
                    <li><span>济南教育资源公共服务平台</span></li>
                    <li><span>莱芜教育资源公共服务平台</span></li>
                    <li><span>宁波教育资源公共服务平台</span></li>
                </ul>
            </div>
        </div>
    </div>
</div>
$(function(){
    $('.scroller').ScrollBar();
});
(function ($) {
    $.fn.ScrollBar = function () {
        return this.each(function () {
            var _this = $(this),
                box = $(this).find('.scroll_box'),
                content = $(this).find('.scroll_absolute'),
                track = $(this).find('.track'),
                thumb = $(this).find('.thumb');
            var H1 = box.outerHeight(true),
                H2 = content.outerHeight(true),
                radio = H2 / H1;//比例换算>0

            if(radio<=1){//高度很小的时候隐藏滚动条
                track.hide();
            }else{
                addEvent(_this[0], 'mousewheel', wheel);
            }
            //设置高度
            track.height(H1);
            thumb.height(H1 / radio);
            var startY = thumb.offset().top;
            var iScroll = 0,top = 0;
            //添加事件
            function addEvent(obj, type, fn) {
                if (typeof obj.addEventListener != 'undefined') {
                    obj.addEventListener('DOMMouseScroll', fn, false) || obj.addEventListener(type, fn, false);
                } else if (typeof obj.attachEvent != 'undefined') {
                    obj.attachEvent('on' + type, fn);
                } else {
                    obj['on' + type] = fn;
                }
            }

            thumb.on('mousedown', move);
            track.on('mouseup',drag);

            function wheel(e) {
                var e = e || window.event;
                var iDetail = e.wheelDelta ? e.wheelDelta / 120 : -(e.detail % 3 == 0 ? e.detail / 3 : e.detail);
                if (e && e.preventDefault) {//阻止默认事件
                    e.preventDefault();
                } else {
                    window.event.returnValue = false;
                    return false;
                }
                iScroll -= iDetail * 40;
                iScroll = Math.min(H2 - H1, Math.max(0, iScroll));
                thumb.css('top', iScroll / radio);
                content.css('top', -iScroll);
            }
            function move(e) {
                var e = event || window.event;
                startY = event.pageY;
                top = parseInt(thumb.css('top'));
                $(document).on('mousemove', drag);
                $(document).on('mouseup', end);
                thumb.on('mouseup', end);
                e.stopPropagation();
            }
            function drag(event) {
                var e = event || window.event;
                var dragY = e.pageY;
                var now = Math.min(H1 - H1 / radio, Math.max(0, dragY - startY + top));
                iScroll = now * radio;
                thumb.css('top', now);
                content.css('top', -iScroll);
                window.getSelection ? window.getSelection().removeAllRanges() : document.selection.empty();
                e.stopPropagation();
            }
            function end() {
                $(document).off('mousemove', drag);
                $(document).off('mouseup', end);
            }
        });
    }
})(jQuery);
css实现滚动条一直显示,并且实现滚动条样式的修改 css实现滚动条一直显示,并且实现滚动条样式的修改 自带的滚动条只有当鼠标移上去的时候才会显示,其他时候隐藏,这样用户很难看出这个是能划动的,这就需要滚动条一直显示在页面上,并且需要按照自己一定的样式去修改。 阅读详情

相关推荐

Augustus手动安装教程

本文记载了如何结合conda手动安装Augustus

m0_65437087的博客 1255

滚动条如何设置样式和滚动条悬浮显示与隐藏

滚动条如何设置样式和滚动条悬浮显示与隐藏

weixin_44784401的博客 2万+

射频接收机本振相噪指标计算:从倒易混频到GSM实战

在射频接收机设计中,相位噪声是衡量本振信号频谱纯度、影响系统灵敏度的关键指标。其核心影响机制源于倒易混频原理:当不纯净的本振信号与强带外阻塞信号混频时,本振的噪声边带会被转换到中频通带内,从而抬升接收机噪声基底。这一过程直接决定了接收机在阻塞测试等场景下的性能极限。从技术价值看,精确计算本振相噪要求,是进行系统噪声预算、实现成本与性能权衡的核心依据。尤其在手机、基站等对灵敏度要求极高的应用中,它指导着锁相环和压控振荡器的选型与设计。本文以经典的GSM DCS1800标准为例,通过详细的公式推导与变量分析,演

weixin_30368405的博客 326

div:给div加滚动条 div的滚动条设置

<br />今天做了个例子:<br />div 的滚动条问题:<br />两种方法:<br />一、<br /><div style=" overflow:scroll; width:400px; height:400px;”></div><br />记住宽和高一定要设置噢,否则不成的<br /><br />不过在不超出时,会有下面的滚动条,所以不是最好的选择<br /> <br />二、<br /><div style=" overflow-y:auto; overflow-x:auto; width:4

晴朗_Raymond 22万+

CentOS 7下kkFileView 4.4.0离线部署全攻略(含LibreOffice 7.5配置避坑指南)

本文详细介绍了在CentOS 7环境下离线部署kkFileView 4.4.0的全流程,包括LibreOffice 7.5的配置避坑指南、中文字体解决方案以及企业级运维实践。通过本指南,用户可以在内网环境中快速搭建稳定可靠的文档在线预览服务,提升办公效率。

weixin_28481133的博客 288

卫星通信链路预算实战:从EIRP到Eb/N0的完整计算指南(含Excel模板)

本文提供了一份卫星通信链路预算的实战指南,详细解析了从EIRP到Eb/N0的完整计算流程。文章重点对比了C波段与Ku波段在应对降雨衰减等动态因素时的不同策略,并分享了包含核心公式的Excel模板,帮助工程师将理论转化为可执行的系统设计依据。

weixin_29230773的博客 534

水平滚动条和垂直滚动条设置

1.overflow内容溢出时的设置(设定被设定对象是否显示滚动条) overflow-x水平方向内容溢出时的设置 overflow-y垂直方向内容溢出时的设置 以上三个属性设置的值为visible(默认值)、scroll、hidden、auto。 2.scrollbar-3d-light-color立体滚动条亮边的颜色(设置滚动条的颜色) scrollbar-arrow-color上下按钮上三角...

6104

LVS 负载均衡面试题及参考答案

什么是 LVS 负载均衡?它的主要作用是什么? LVS(Linux Virtual Server)是一个基于 Linux 内核的开源负载均衡项目。它通过将请求流量按照一定的算法分发到后端的多个真实服务器(Real Server)上,从而实现负载均衡的功能。 从原理上来说,LVS 工作在网络层和传输层之间。当客户端发起请求时,请求首先到达 LVS 服务器,LVS 会根据预先设定的规则和算法,比如轮询(Round - Robin)、加权轮询(Weighted Round - Robin)、最少连

大模型大数据攻城狮的专栏 1469

Qt悬浮滚动条-让滚动条不再占用控件的大小

我们在Qt开发中经常会用到带有滚动条的控件,但是自带的滚动条实在太丑。于是我们想到用qss美化滚动条,这是一种很常见的做法。但是当我们只是对滚动条通过一个style做一些美化的话,会发现效果并不是那么完美。例如滚动条会占用控件的大小,滚动条的ScrollBarPolicy默认值是Qt::ScrollBarAsNeeded,即需要它的时候才出现。如果我们改变控件大小时,滚动条会出现/消失,导致内容宽

m32692529的专栏 6620

Android Input——输入系统介绍(一)

Input 系统对于提供流畅、灵敏和一致的用户交互体验至关重要,它需要在不同的设备、场景和应用中保证输入事件的正确性、及时性和安全性。Android 输入系统是一个复杂但高效的设计,旨在处理来自各种输入设备(如触摸屏、键盘等)的用户交互,并将这些交互转换为应用程序可以理解和响应的形式。EventHub:输入系统的最底层,直接与硬件通信,监听和读取输入设备的原始事件。:从 EventHub 获取原始输入事件,对其进行解析,转化为更高层次的事件,以便上层应用或服务能够理解。

小旭的专栏 1710

ArcMap|使用模型构建器将kml文件批量转图层

参考:https://www.jianshu.com/p/6de18f846024 第一步:打开模型构建器,拖入kml转图层工具 第二步:插入文件迭代器 第三步:双击“迭代文件”,选择kml所在文件夹 第四步:将“File.kml”与“KML转图层”连接,点击“输入KML文件” 第五步:双击“KML转图层”,更改输出位置,输出数据名称改为%名称% 第六步:运行模型 得到结果: ...

个人学习笔记 3601

手机html设纵向滚动条,html滚动条

手机评站网今天精心准备的是《html滚动条》,下面是详解!HTML滚动条的属性scrollbar,这个有哪些属性...scrollbar,这个有哪些属性1.overflow内容溢出时的设置(设定被设定对象是否显示滚动条)overflow-x水平方向内容溢出时的设置overflow-y垂直方向内容溢出时的设置以上三个属性设置的值为visible(默认值)、scroll、hidden、auto。 2....

weixin_34072734的博客 3472

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

css滚动条

css滚动条 一.默认样式的滚动条 引例:我们平时编写盒模型时,如果想要实现定义一个父级元素中装着一些图片或文本内容,让这些图片或文本内容呈现出有滚动条样式的效果,应该怎样实现呢? 思路:我们知道,在父级元素的宽高都给定时,子级元素的宽或者高超出了父级元素的宽或者高,会呈现出如下效果: 因此我们可以先编写好父级元素和子级元素。然后再在父级元素的css属性中添加一条属性: overflow-x:h...

qq_44875145的博客 3458

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

ant design table去掉表头滚动条及滚动条样式修改

ant table 组件的滚动条样式不太好看 考虑调整一下 而且表头 和x轴还出现了滚动条 原滚动条样式: 去掉表头的滚动条 .ant-table-fixed-header .ant-table-scroll .ant-table-header { overflow: hidden; height: 70px; } 去掉x轴的滚动条就比较容易了 直接设置...

qq_37642495的博客 1万+

Delphi 滚动条的自绘

一开始想让TListview 滚动条好看一点,进行自绘尝试。 写着写着就发现,这应该是个通用的类。 想想也是应该的。WINDOWS所有控件的滚动条原理都是一样的。 本自绘滚动条类,是通用类,可针对所有WINDOWS控件(除了IE滚动条)。 本自绘滚动条类,是替换了WINDOWS控件的原来的滚动条,用 TPanel 代替,在 TPanel 中进行自绘滚动条。 代码如下: unit untFMS...

dbyoung的Delphi专栏 2727

判断元素是否有滚动条

判断元素是否有滚动条判断元素是否有滚动条判断竖向滚动条判断横向滚动条 判断元素是否有滚动条 因为出现滚动条便意味着元素空间将大于其内容显示区域,根据这个现象便可以得到判断是否出现滚动条的规则. 判断竖向滚动条 el.scrollHeight > el.clientHeight scrollHeight: 指的是元素的内容高度,即如果有滚动条,它的值会等于内容实际的高度加padding值(并不包含border和margin值),在没有内容溢出的情况下它的值等于clientHeight。 clientH

socaicaicaicai的博客 4110

滚动条样式

以下是一个包含所有主流浏览器滚动条样式属性的完整HTML文件,涵盖了WebKit内核浏览器和Firefox的滚动条定制: 包含的所有滚动条样式属性 WebKit浏览器 (Chrome, Safari, Edge等) - 整个滚动条 - 滚动条轨道 - 滚动条滑块 - 滚动条按钮(箭头) - 滚动条角落 - 滚动条宽度 - 滚动条颜色 - 控制溢出行为滚动条美化技巧这个示例涵盖了所有主流浏览器中可用的滚动条样式属性,您可以直接使用或根据需要修改其中的样式定义。

持续输出,励志当全栈开发人员 1190

JS实现滚动条

JS实现滚动条 在页面中,滚动条的样式虽然可以修改,但是部分属性是无法自己修改和设置,因此通过JS来实现滚动条在自定义滚动条的环境下也是有必要的。 在实现滚动条的过程中,首先需要分析组成部分,主要是内容和滚动两个部分,一般的滚动条主要需要实现的主要是内容的Scroll。 下面贴出代码 <!DOCTYPE html> <html lang="en"> <head>...

qq_38427709的博客 5689

html 纵向滚动条,css设置纵向滚动条

css 怎样设置总是显示竖滚动条给元素设置样式overflow-y:scroll; 和一个高度,当内容填满后就会出现下拉的滚动条了。CSS 如何添加水平滚动条CSS 如何添加水平滚动条 我知道怎么加垂直滚动条设置 overflow 属性: div { width:150px; height:150px; overflow:auto; }overflow属性如下: auto:当此div子元素宽和高大...

weixin_39621488的博客 1万+

qtablewidget控件滚动条设置

qtablewidget控件的滚动条分为纵向滚动条设置和横向滚动条设置. 纵向滚动条设置: ui.tableWidget_grid->verticalScrollBar()->setStyleSheet("QScrollBar{background-color:rgb(218,222,223); width:10px;}" "QScrollBar::handle{background-color:

蜗牛的专栏 1万+

HTML中的滚动条/去掉滚动条

xhtml下frame页面横向滚动条的问题 在用ie6浏览有框架的xhtml页面的时候,默认会水平和垂直滚动条会一起出现,这是ie6的一个bug,在firefox上是正常的,出现的原因是其对XHTML 1.0 transitional doctype的解释缺陷。 对于这个bug一般有3种解决方案, 方法1: 代码: html { overflow-y: scroll;

科研这件小事 1万+

html中怎么设置滚动条效果,滚动条怎么实现

HTML中如何在div中实现滚动条?HTML中如何在div中实现滚动条? CSS布局HTML小编今天和大家分享问overflow:scroll; /*任何时候都强制显示滚动条*/overflow:auto; /*需要的时候会出现滚动条*/overflow-x:auto; /*控制X方向的滚动条*/overflow-y:auto; /*控制Y方向的滚动条*/受overflow影响的必需是块元素,并且...

weixin_30316931的博客 3701

AndroidStudio滚动条

滚动条有两种增加方式,从xml文件和从java文件,我主要记录了从xml文件增加。 有水平和竖直方向两种滚动条,同时,默认一个滚动条下面只能有一个控件,如果想要 添加多个控件,就需要在这些控件的外层增加一个布局,下面shi线性布局。 <!--水平方向的滚动条--> <HorizontalScrollView android:layout_width="w...

qq_43586051的博客 6237

MFC 滚动条

今天折腾了一天就学了个滚动条,没有想到挺麻烦的........虽然老师说以后用控件,现在做真够费劲的!     为窗口添加滚动条    为窗口添加滚动条非常的简单,只需在创建窗口时指定窗口的样式中加上WS_VSCROLL或WS_HSCROLL或是两者皆有即可。    设置选项    通过SetScrollInfo函数来设置滚动条   使滚动条大小适应窗口变化变化在WM_ON

xxliuzhifeng的专栏 9271
上一篇: Console
下一篇: js浏览器检测的一些方法
chentian888
博客等级 码龄11年 16粉丝 76原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值