bootstrap五星評分_如何用純代碼實現評分星級顯示?

showRatingStars

/**

* showRatingStars 顯示評分星級

* @param {Object} myCanvas 畫布對象

* @param {Number} rating 評分

* @param {Number} counts star個數

* @param {Number} size star大小

* @param {Object} style star樣式

* Example: style = {

* borderColor:"#21DEEF",

* fillColor:"#21DEEF",

* spaceColor:"#FFFFFF"

* }

* @return none*/

functionshowRatingStars(myCanvas, rating, counts, size, style) {//檢測rating與star數目是否合適

if(rating>counts) {

alert("Please set suitable rating and counts!");return;

}//檢測大小設置是否合適

if(myCanvas.offsetWidth

alert("Please set suitable size and myCanvas' size!");return;

}varcontext=myCanvas.getContext('2d');varxStart=rating*size;varyStart= 0;varxEnd=(Math.ceil(rating)+ 1)*size;varyEnd= 0;varradius=size/ 2;//線性漸變,由左至右

varlinear=context.createLinearGradient(xStart, yStart, xEnd, yEnd);

linear.addColorStop(0, style.fillColor);

linear.addColorStop(0.01, style.spaceColor);

linear.addColorStop(1, style.spaceColor);

context.fillStyle=linear;//star邊框顏色設置

context.strokeStyle=style.borderColor;

context.lineWidth= 1;//繪制star的頂點坐標

varx=radius,

y= 0;for(vari= 0; i

context.beginPath();varx1=size*Math.sin(Math.PI/ 10);varh1=size*Math.cos(Math.PI/ 10);varx2=radius;varh2=radius*Math.tan(Math.PI/ 5);

context.lineTo(x+x1, y+h1);

context.lineTo(x-radius, y+h2);

context.lineTo(x+radius, y+h2);

context.lineTo(x-x1, y+h1);

context.lineTo(x-x1, y+h1);

context.lineTo(x, y);

context.closePath();

context.stroke();

context.fill();

x=(i+ 1.5)*size;

y= 0;

context.moveTo(x, y);

}

}//參數設置與函數調用

varsize= 25;varrating= 4.57;varcounts= 10;varstyle={

borderColor:"#21DEEF",

fillColor:"#21DEEF",

spaceColor:"#FFFFFF"};varmyCanvas=document.getElementById("myCanvas");

showRatingStars(myCanvas, rating, counts, size, style);

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/538748.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/538748.shtml
英文地址,請注明出處:http://en.pswp.cn/news/538748.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

18.變量

Java是一種強類型語言,每個變量都必須聲明其類型。 Java變量是程序中最基本的存儲單元,其要素包括變量名,變量類型和作用域。 變量在使用前必須對其聲明,只有在變量聲明以后,才能為其分配相應長度的存儲單元。 注意事項…

alertdialog android api 11,android – 設備api級別11的DialogFragments

我設法在兼容包的DialogFragment.java中正確修復了這個問題:改變第74行:boolean mShowsDialog false;注釋掉第232行:// mShowsDialog mContainerId 0;然后將兩個show方法更改為:public void show(FragmentManager manager, Str…

py 字典添加多個value_# Python 3 # Python 3字典Dictionary(1)

Python3 字典字典是另一種可變容器模型,且可存儲任意類型對象。字典的每個鍵值(key>value)對用冒號(:)分割,每個對之間用逗號(,)分割,整個字典包括在花括號({})中 ,格式如下所示:d {key1 : value1, key2 : value2 }鍵必須是唯…

饒軍:Apache Kafka的過去,現在,和未來

歡迎大家前往騰訊云社區,獲取更多騰訊海量技術實踐干貨哦~ 本文首發在云社區,未經許可,不得轉載。大家好,我大概簡單的介紹一下,我叫饒軍,我是硅谷的初創公司Con?uent的聯合創始人之一,我們公司…

機器人 樹莓派 自閉癥_用機器人孩子提高社交能力 讓自閉兒童走出自閉

一項由耶魯大學的研究團隊研究發現,通過讓患有自閉癥譜系障礙(autism spectrum disorders,ASD)的孩童與機器人相處一個月,極大地提高了自閉癥兒童的社交能力。耶魯大學研究中的機器人可以通過眼神接觸和模仿其它社交行為,通過講故事和互動游戲…

19.常量-final

final 常量 final修飾,只能被初始化一次。 public static void main(String[] args){final int a3;a4;//報錯/*TestVariable.java:7: 錯誤: 無法為最終變量a分配值a4;^ 1 個錯誤*/}常量一般用大寫來修飾。 ------------- 更多的Java,Angular,…

Android手機avi轉換為mp4手機,如何把avi轉換為mp4

AVI是目前比較常見的一種音視頻交錯格式,這種格式的文件在多種地方是可以看到的,大多在游戲錄制、光盤文件中可以見到此類文件。其畫質不錯,適合在電腦上觀看,但是現在我們使用較多的是手機、iPad等設備。如果我們想要在這些設備上…

偽代碼書寫規范_C++代碼書寫規范(推薦新手程序員)

代碼就是程序員的面子,無論是在工作中在電腦上寫程序代碼還是在面試時在紙上寫演示代碼我們都希望寫出整潔,優雅的代碼。特別在工作中當我們碰到需要維護別人的代碼,或者是多人參與一個項目大家一起寫代碼的時候,如果碰到一些丑陋…

Java基礎17:Java IO流總結

版權聲明:本文為博主原創文章,未經博主允許不得轉載。 https://blog.csdn.net/a724888/article/details/80201802 這位大俠,這是我的公眾號:程序員江湖。 分享程序員面試與技術的那些事。 干貨滿滿,關注就送。 本文介…

nuxt頁面跳轉_nuxt 項目如何解決組件復用時頁面不刷新的問題

組件復用會在兩種情況下發生:1、使用 keep-alive 時,頁面再次跳轉時,數據不更新每一次路由的切換都會導致頁面被重新渲染,無論是各種鉤子還是異步獲取數據函數都會被執行,為了提高網站性能,可以使用 keep-a…

20.命名規范

所有變量,方法,類名:見名知意 變量,方法名 --首字母小寫和駝峰原則。 如:run(),getName() 常量 ---大寫字母和下劃線:MAX_VALUE 類名 ---首字母大寫和駝峰原則。 如:Man,HelloWorld ------…

k8s查看pod的yaml文件_K8s-yaml的使用及命令

YAML配置文件管理對象對象管理:# 創建deployment資源kubectl create-f nginx-deployment.yaml# 查看deploymentkubectl get deploy# 查看ReplicaSetkubectl get rs# 查看pods所有標簽kubectl get pods--show-labels# 根據標簽查看podskubectl get pods-l appnginx# …

Orange Business Services 全球發布 Easy Go Network,幫助企業加速實現“網絡即服務”...

100% 數字化, 軟件定義網絡( SDN) 產品在 75 個國家上市 在云、移動化、大數據和物聯網(IoT)趨勢的推動下,企業不斷尋求更加智能和更加靈活的網絡,以支持他們的數字化轉型方案。而網絡只有演進至“網絡即服務”(NaaS&a…

vue的html自動刷新,Vue頁面刷新記住頁面狀態的實現

環境vue項目,頁面有搜索、篩選項等。需求頁面跳轉,切換或者刷新,希望可以記住用戶在頁面的篩選狀態方案v1vue有提供一種緩存組件的解決方案 — keep-alive。緩存不活動的組件實例,而不是銷毀它們。我們可以使用keep-alive包括路由…

python 程序停止打印日志_Python日志打印

簡單示例import sysimport ctypesimport loggingimport logging.handlersreload(sys)sys.setdefaultencoding(utf-8)LOG_FILE test_loglogging.basicConfig(filename LOG_FILE,format %(asctime)s - %(levelname)s -%(process)d- %(filename)s:%(funcName)s:%(lineno)d - %(…

21.和和instance of

>> 右移一位。相當于除2 << 左移一位。相當于乘2 public static void main(String[] args) {int a3<<2;int b12>>2;System.out.println("a"a);System.out.println("b"b);}解析&#xff1a; a3*2*212 b12/2/23 運行結果&#xf…

html語言閃爍特效代碼,css3 文字閃爍特效代碼

今天給大家分享幾個文字閃爍特效代碼&#xff0c;純css3代碼實現&#xff0c;對于新手小伙伴值得拿來學習一下。文字閃爍特效一通過改變透明度來實現文字的漸變閃爍&#xff0c;代碼如下&#xff1a;文字閃爍&#xff1a;閃爍效果.main{color: #666;margin-top: 50px;}/* 定義k…

keyshot怎么貼logo_如何使用KeyShot添加有織紋的Logo

如果你的產品上有企業logo&#xff0c;那么將logo作為一種材質(如鍍鉻貼紙)就很常見了&#xff0c;但不是在3D里建模logo&#xff0c;建模logo會產生額外的工作&#xff0c;還會降低建模的效率&#xff0c;不過KeyShot提供了一種簡單的方法&#xff0c;可以更快地實現相同的效果…

tar解壓出錯tar: Child returned status 1

一、錯誤情況 目前我遇到錯誤情況&#xff1a; 1、壓縮文件不是 .tar.gz的文件是.tar文件。使用了 tar -zxvf 命令。 解決方法&#xff1a; 去掉z。 原因&#xff1a; .tar只是將文件打包&#xff0c;文件的大小沒什么變化。 .tar.gz是加入了gzip的壓縮命令&#xff0c…