簡單教學 progressdots是一款可自訂刻度動畫的jQuery進度條外掛程式。透過這個jQuery進度條外掛你可以自訂進度條刻度圓點的數量,大小,顏色等屬性,並且可以透過CSS來控制圓點的外觀樣式。
請看下面效果圖了解相關外掛程式。
使用此jQuery進度條外掛需要引入jquery,jquery.progressdots.js和jquery.progressdots.css檔。
<script src="jquery.min.js"></script> <script src="jquery.progressdots.js"></script> <link href="jquery.progressdots.css" rel="stylesheet">
HTML結構
然後使用一個空的
容器的寬度和高度任意。
<div id='progressBox'></div>
為進度條容器設定一些基本樣式,指定它的寬度和高度。
#progressBox{ border: 8px solid #DDD; width: 80%; height: 40px; }
呼叫外掛
在頁面DOM元素載入完畢之後,可以透過下面的方法來初始化該進度條外掛程式
$( '#progressBox' ).dottify({ dotSize: '25px', //set size of dot dotColor: '#f15c89', //set dot color (#HEX) progress: true, //enable progress percent: 10, //set initial percentage radius: '40%' //set dot corner radius });
進階選項
var progressBox = $( '#progressBox' ).dottify({ progress:true, //start with progressbar on percent:0 }); progressBox.setProgress( 20 ); //update progress percentage
可自訂刻度jQuery進度條是一款可以自訂進度條刻度圓點的數量,大小,顏色等屬性,並且可以透過CSS來控制圓點的外觀樣式。
效果圖如下:
html代碼:
<div class="htmleaf-container"> <div id="container"> <div class="padded"> <div id="progressHolder"></div> <div id="progressReset">生成随机的风格</div> </div> </div> </div> <script src="js/jquery-2.1.1.min.js" type="text/javascript"></script> <script src="js/jquery.progressdots.js"></script> <script src="js/prism.js"></script> <script> $(document).ready(function () { createSpots(1); $("#progressReset").click(function (event) { event.preventDefault(); createSpots(1); }); function createSpots(num) { for (var i = 0; i < num; i++) { options = { dotSize: random(10, 20) + "px", radius: random(1, 7) * 10 + "%" }; randomHtml = ""; if (Math.random() < 0.5) { options.randomColors = true; randomHtml += "\n\trandomColors: " + options.randomColors + ", //use random colors"; } else { options.dotColor = randomColor(); randomHtml += "\n\tdotColor: '" + options.dotColor + "', //set dot color (#HEX)"; } if (Math.random() < 0.3) { options.progress = true; options.percent = random(5, 100); randomHtml += "\n\tprogress: true, //enable progress"; randomHtml += "\n\tpercent: " + options.percent + ", //set initial percentage"; } else { options.numDots = random(3, 15); randomHtml += "\n\tnumDots: " + options.numDots + ", //number of dots"; } string = "$( '#progressBox' ).dottify({\ \n\tdotSize: '" + options.dotSize + "', //set size of dot" + randomHtml + "\n\tradius: '" + options.radius + "' //set dot corner radius\ \n});"; var $container = $("<div class='swoopContainer'></div>").data("setupString", JSON.stringify(string)); $("#progressHolder").append($container.hide()); $container.slideDown(function () { $(this).css({ overflow: "hidden" }); }); $container.click(function () { $(".swoopContainer").removeClass("selected"); $(this).addClass("selected"); $("#jsContents").html(JSON.parse($(this).data("setupString"))); Prism.highlightAll(); }); $container.dottify(options); $("#jsContents").html(string); Prism.highlightAll(); } $(".swoopContainer").removeClass("selected"); $(".swoopContainer").last().addClass("selected"); } function randomColor() { return '#' + Math.floor(Math.random() * 16777215).toString(16); } function random(min, max) { return Math.floor(Math.random() * ((max - min) + min) + min); } }); </script>