日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

jQuery - 滚动条插件 NiceScroll 使用详解(滚动条美化)

發布時間:2023/12/10 编程问答 45 豆豆
生活随笔 收集整理的這篇文章主要介紹了 jQuery - 滚动条插件 NiceScroll 使用详解(滚动条美化) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

? ? 有時為了保持頁面風格的統一,我們需要修改滾動條的樣式。雖然我們可以通過?CSS?設置滾動條各部分的顏色樣式,但這種方式不支持老版本的瀏覽器。而且不同的瀏覽器下,CSS?滾動條屬性的寫法也不一樣,如果各個瀏覽器都需要兼容(特別是移動設備的瀏覽器),那就十分麻煩了。

? ? 這里推薦一個十分好用的滾動條插件:Nicescroll

一、NiceScroll 介紹

NiceScroll?是一款完全基于?jQuery?框架的滾動條插件,它不僅有著類似?iOS?系統設備的滾動條外觀,而且還支持任意的?<div>、<iframe>、<body>?元素的滾動效果。

?

1,GitHub 主頁

  • https://github.com/inuyaksa/jquery.nicescroll

?

2,功能特點

  • 不需要增加額外的?CSS。
  • 幾乎全瀏覽器兼容:Chrome、Firefox、Edge、IE8+、Safari、Opera
  • 實現只需要一段代碼,侵入性非常小。
  • 樣式可完全自定義。
  • 支持觸摸事件,可在觸摸屏上使用。

?

3,配置說明

(1)頁面中引入?jquery.js
(2)頁面中引入?jquery.nicescroll.js
(3)如果需要用到全屏放大功能的話,還要把?zoomico.png?復制到與?jquery.nicescroll.js?同一個文件夾下。

?

二、基本用法

1,最簡單的用法

(1)我們只需在頁面初始化完畢后,對需要使用這個滾動條插件的元素調用?niceScroll()?方法即可。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

<!DOCTYPE html>

<html>

??<head>

????<meta charset="utf-8">

????<title></title>

????<script src="js/jquery-3.1.1.js"?charset="utf-8"></script>

????<script src="js/jquery.nicescroll.js"?charset="utf-8"></script>

????<script type="text/javascript">

??????$(document).ready(

????????function() {

??????????$("html").niceScroll();

????????}

??????);

????</script>

??</head>

??<style>

????li {

??????height: 50px;

????}

??</style>

??<body>

????<ul>

??????<li>條目1</li>

??????<li>條目2</li>

??????<li>條目3</li>

??????<li>條目4</li>

??????<li>條目5</li>

????</ul>

??</body>

</html>


(2)這里我直接是讓整個頁面使用?NiceScroll?插件,默認情況下滾動條是自動隱藏的,即內容如果超出窗口時滾動條也不會顯示。(當然此時通過鼠標滾輪還是可以滾動頁面的)

?

(3)當鼠標移到窗口右側時,滾動條則會顯示出來。我們可以拖動它進行頁面滾動。

?

2,返回滾動條對象

1

2

3

4

var?nice =?false;

$(function() {?

????nice = $("body").niceScroll();

});

?

3,使用容器“wrapper”包含DIV

這種方式由兩個?DIV?組成,前一個為?vieport,后一個為里面內容。

1

$("#viewportdiv").niceScroll("#wrapperdiv",{cursorcolor:"#00F"});

如果遇到加載數據的時候?nicescroll?滾動條閃爍,還有對絕對定位的元素(例如下拉框)使用滾動條,特別是在需要滾動條比較多的頁面,導致位置錯亂的等問題。那么需要使用這個方法對設置滾動條的元素的直接子元素進行設置,比如:
? ??$("#viewportdiv").niceScroll("#wrapperdiv",{
? ? ? ? ? ? 'cursorcolor':'#686868',
? ? ? ? ? ? 'cursorborder':'none',
? ? ? ? ? ? 'smoothscroll': 'false',
? ? ? ? ? ? 'autohidemode':false
? ? });

?

4,隱藏滾動條

注意:這個只是把滾動條隱藏,使用鼠標滾輪仍然可以進行滾動。

1

$("#div1").getNiceScroll().hide();

?

5,重置滾動條大小

1

$("#div1").getNiceScroll().resize();

?

6,滾動到某個指定位置

1

2

3

4

5

//水平方向滾動(距左側100px)

$("#div1").getNiceScroll(0).doScrollLeft(100);

?

//垂直方向滾動(距上方100px)

$("#div1").getNiceScroll(0).doScrollTop(100);

7,刪除滾動條

1

$("#div1").getNiceScroll().remove();

?

?

$("#div1").niceScroll({

? ? ? ?cursorborder:"",//不需要border

? ? ? ?cursorcolor:"#C1C1C1",//滾動條顏色

? ? ? ?boxzoom:false,//禁止放大box的內容

? ? ? ?autohidemode:false,//禁止隱藏

? ? ? ?horizrailenabled:false //水平方向禁用

});

三、常用配置參數

在調用?niceScroll()?方法初始化滾動條時,我們可以傳入一些參數屬性,從而對滾動條的樣式以及行為進行修改。

?

1,簡單的樣式修改

(1)這里我們對滾動條的顏色和觸摸滾動模式進行的修改。

1

2

3

4

5

6

7

8

$("#div1").niceScroll({

????touchbehavior:true,?????//是否是觸摸式滾動效果

????cursorcolor:"#333",?????//滾動條的顏色值

????cursoropacitymax:0.6,???//滾動條的透明度值

????cursorwidth:20,?????????//滾動條的寬度值

????background:"#00F",??//滾動條的背景色,默認是透明的

????autohidemode:true,??????//滾動條是否是自動隱藏,默認值為 true

});


(2)效果圖

?

2,全屏放大顯示

(1)要開啟全屏放大功能,只需把?boxzoom?參數設置為?true。(同時記得把?zoomico.png?放到與?jquery.nicescroll.js?同一個文件夾下)

1

2

3

$("#div1").niceScroll({

????boxzoom:?true??//顯示放大鏡標按鈕,(默認為false)

});


(2)當我們將鼠標移到滾動區域右側時,在滾動條旁邊會顯示出一個“放大”圖標。點擊后該區域會自動放大占滿整個瀏覽器窗口。

?

(3)而當這個區域放大后,右上角的這個圖標又會變成“縮小”圖標,點擊后該區域則又還原回原來的位置和尺寸。

?

3,完整的配置參數表

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

$("#div1").niceScroll({

????????cursorcolor:?"#424242",?// 改變滾動條顏色,使用16進制顏色值

????????cursoropacitymin: 0,?// 當滾動條是隱藏狀態時改變透明度, 值范圍 1 到 0

????????cursoropacitymax: 1,?// 當滾動條是顯示狀態時改變透明度, 值范圍 1 到 0

????????cursorwidth:?"5px",?// 滾動條的寬度,單位:便素

????????cursorborder:?"1px solid #fff",?// CSS方式定義滾動條邊框

????????cursorborderradius:?"5px",?// 滾動條圓角(像素)

????????zindex:?"auto",?// 改變滾動條的DIV的z-index值(auto或數字)

????????scrollspeed: 60,?// 滾動速度

????????mousescrollstep: 40,?// 鼠標滾輪的滾動速度 (像素)

????????touchbehavior:?false,?// 激活拖拽滾動

????????hwacceleration:?true,?// 激活硬件加速

????????boxzoom:?false,?// 激活放大box的內容

????????dblclickzoom:?true,?// (僅當 boxzoom=true時有效)雙擊box時放大

????????gesturezoom:?true,?// (僅 boxzoom=true 和觸屏設備時有效) 激活變焦當out/in(兩個手指外張或收縮)

????????grabcursorenabled:?true,?// (僅當 touchbehavior=true) 顯示“抓住”圖標display "grab" icon

????????autohidemode:?true,?// 隱藏滾動條的方式, 可用的值如下:

????????/**

??????????true? 無滾動時隱藏

??????????"cursor"? 隱藏

??????????false 不隱藏,

??????????"leave" 僅在指針離開內容時隱藏

??????????"hidden" 一直隱藏

??????????"scroll" 僅在滾動時顯示

????????**/

????????background:?"",?// 軌道的背景顏色

????????iframeautoresize:?true,?// 在加載事件時自動重置iframe大小

????????cursorminheight: 32,?// 設置滾動條的最小高度 (像素)

????????preservenativescrolling:?true,?// 你可以用鼠標滾動可滾動區域的滾動條和增加鼠標滾輪事件

????????railoffset:?false,?// 可以使用top/left來修正位置

????????bouncescroll:?false,?// (only hw accell) 啟用滾動跳躍的內容移動

????????spacebarenabled:?true,?// 當按下空格時使頁面向下滾動

????????railpadding: { top: 0, right: 0, left: 0, bottom: 0 },?// 設置軌道的內間距

????????disableoutline:?true,?// 當選中一個使用nicescroll的div時,chrome瀏覽器中禁用outline

????????horizrailenabled:?true,?// nicescroll可以管理水平滾動

????????railalign:?"right",?// 對齊垂直軌道

????????railvalign:?"bottom",?// 對齊水平軌道

????????enabletranslate3d:?true,?// nicescroll 可以使用CSS變型來滾動內容

????????enablemousewheel:?true,?// nicescroll可以管理鼠標滾輪事件

????????enablekeyboard:?true,?// nicescroll可以管理鍵盤事件

????????smoothscroll:?true,?// ease動畫滾動

????????sensitiverail:?true,?// 單擊軌道產生滾動

????????enablemouselockapi:?true,?// 可以用鼠標鎖定API標題 (類似對象拖動)

????????cursorfixedheight:?false,?// 修正光標的高度(像素)

????????hidecursordelay: 400,?// 設置滾動條淡出的延遲時間(毫秒)

????????directionlockdeadzone: 6,?// 設定死區,為激活方向鎖定(像素)

????????nativeparentscrolling:?true,?// 檢測內容底部便于讓父級滾動

????????enablescrollonselection:?true,?// 當選擇文本時激活內容自動滾動

????????cursordragspeed: 0.3,?// 設置拖拽的速度

????????rtlmode:?"auto",?// DIV的水平滾動從左邊開始

????????cursordragontouch:?false,?// 使用觸屏模式來實現拖拽

????????oneaxismousemode:?"auto",?// 當只有水平滾動時可以用鼠標滾輪來滾動,如果設為false則不支持水平滾動,如果設為auto支持雙軸滾動

????????scriptpath:?"",?// 為boxmode圖片自定義路徑 ("" => same script path)

????????preventmultitouchscrolling:?true?// 防止多觸點事件引發滾動

????});


原文出自:www.hangge.com??轉載請保留原文鏈接:http://www.hangge.com/blog/cache/detail_1931.html

轉載于:http://www.hangge.com/blog/cache/detail_1931.html

總結

以上是生活随笔為你收集整理的jQuery - 滚动条插件 NiceScroll 使用详解(滚动条美化)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。