本文實例講述了js實作可得到不同顏色值的顏色選擇器。分享給大家供大家參考。具體實作方法如下:
<script><br /> var iW = '70';//共有6種顏色,每種顏色的寬度為iW。 iW*6為色帶的寬。 <br /> var iH = '400';//iH為色帶的高。 <br /> //計算HSV顏色碼。 <br /> function HSV(){<br /> kkk1.value = 'X:' event.offsetX ' Y:' event.offsetY;<br /> var H,S,V;<br /> var pY = event.offsetY;<br /> if(pY == 0){H = S = 0; V = 100;}<br /> else{<br /> if(pY == iH-1) H = S = V = 0;<br /> else{<br /> H = Math.floor(360*event.offsetX/(iW*6));<br /> S = Math.round(50*(iH-pY)/(iH/2));<br /> V = Math.round(100-50*pY/iH);<br /> }<br /> }<br /> kkk2.value='HSV(' H ',' S '%,' V '%)';<br /> HSVtoRGB(H,S/100,V/100);<br /> } <p>//計算RGB顏色代碼。 <br /> function HSVtoRGB(h,s,v){<br /> var i, f ,p1 ,p2 ,p3;<br /> var r = g = b = 0;<br /> if(s < 0) s=0;<br /> if(s > 1) s=1;<br /> if(v < 0) v=0;<br /> if(v > 1) v=1;<br /> h %= 360;<br /> if(h < 0) h =360;<br /> h /= 60;<br /> i = Math.floor(h);<br /> f = h-i;<br /> p1 = v*(1-s);<br /> p2 = v*(1-s*f);<br /> p3 = v*(1-s*(1-f));<br /> if(i == 0){r=v; g=p3; b=p1;}<br /> else if(i == 1){r=p2; g=v; b=p1;}<br /> else if(i == 2){r=p1; g=v; b=p3;}<br /> else if(i == 3){r=p1; g=p2; b=v;}<br /> else if(i == 4){r=p3; g=p1; b=v;}<br /> else if(i == 5){r=v; g=p1; b=p2;}<br /> kkk3.value='RGB(' Math.round(r*255) ',' Math.round(g*255) ',' Math.round(b*255) ')';<br /> RGBtoHTML(Math.round(r*255),Math.round(g*255),Math.round(b*255))<br /> } <p>//計算HTML顏色碼。 <br /> function RGBtoHTML(r,g,b){<br /> r=(r>=16)?r.toString(16):('0' r.toString(16))<br /> g=(g>=16)?g.toString(16):('0' g.toString(16))<br /> b=(b>=16)?b.toString(16):('0' b.toString(16))<br /> kkk4.value='HTML #' r g b;<br /> } <p>function window.onload(){<br /> var RainBow = new Array(255,0,0, 255,255,0, 0,255,0, 0,255,255, 0,0,255, 255,0,255, 25<,0,0); for(var i=0;i<6;i ){<br /> var R1 = RainBow[i*3];<br /> var G1 = RainBow[i*3 1];<br /> var B1 = RainBow[i*3 2];<br /> var R2 = RainBow[(i 1)*3];<br /> var G2 = RainBow[(i 1)*3 1];<br /> var B2 = RainBow[(i 1)*3 2];<br /> RainBowDiv.innerHTML = "<div style='position:absolute;left:" i*iW ";top:0;width:" iW ";height:" iH ";background:rgb(" R1 "," G1 ", " B1 ");'></script>
}
RainBowDiv.innerHTML = " "
}
更多js顏色操作可參考本站顏色工具:
希望本文所述對大家的javascript程式設計有所幫助。

JavaScript在現實世界中的應用包括前端和後端開發。 1)通過構建TODO列表應用展示前端應用,涉及DOM操作和事件處理。 2)通過Node.js和Express構建RESTfulAPI展示後端應用。

JavaScript在Web開發中的主要用途包括客戶端交互、表單驗證和異步通信。 1)通過DOM操作實現動態內容更新和用戶交互;2)在用戶提交數據前進行客戶端驗證,提高用戶體驗;3)通過AJAX技術實現與服務器的無刷新通信。

理解JavaScript引擎內部工作原理對開發者重要,因為它能幫助編寫更高效的代碼並理解性能瓶頸和優化策略。 1)引擎的工作流程包括解析、編譯和執行三個階段;2)執行過程中,引擎會進行動態優化,如內聯緩存和隱藏類;3)最佳實踐包括避免全局變量、優化循環、使用const和let,以及避免過度使用閉包。

Python更適合初學者,學習曲線平緩,語法簡潔;JavaScript適合前端開發,學習曲線較陡,語法靈活。 1.Python語法直觀,適用於數據科學和後端開發。 2.JavaScript靈活,廣泛用於前端和服務器端編程。

Python和JavaScript在社區、庫和資源方面的對比各有優劣。 1)Python社區友好,適合初學者,但前端開發資源不如JavaScript豐富。 2)Python在數據科學和機器學習庫方面強大,JavaScript則在前端開發庫和框架上更勝一籌。 3)兩者的學習資源都豐富,但Python適合從官方文檔開始,JavaScript則以MDNWebDocs為佳。選擇應基於項目需求和個人興趣。

從C/C 轉向JavaScript需要適應動態類型、垃圾回收和異步編程等特點。 1)C/C 是靜態類型語言,需手動管理內存,而JavaScript是動態類型,垃圾回收自動處理。 2)C/C 需編譯成機器碼,JavaScript則為解釋型語言。 3)JavaScript引入閉包、原型鍊和Promise等概念,增強了靈活性和異步編程能力。

不同JavaScript引擎在解析和執行JavaScript代碼時,效果會有所不同,因為每個引擎的實現原理和優化策略各有差異。 1.詞法分析:將源碼轉換為詞法單元。 2.語法分析:生成抽象語法樹。 3.優化和編譯:通過JIT編譯器生成機器碼。 4.執行:運行機器碼。 V8引擎通過即時編譯和隱藏類優化,SpiderMonkey使用類型推斷系統,導致在相同代碼上的性能表現不同。

JavaScript在現實世界中的應用包括服務器端編程、移動應用開發和物聯網控制:1.通過Node.js實現服務器端編程,適用於高並發請求處理。 2.通過ReactNative進行移動應用開發,支持跨平台部署。 3.通過Johnny-Five庫用於物聯網設備控制,適用於硬件交互。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

SublimeText3 英文版
推薦:為Win版本,支援程式碼提示!

Dreamweaver Mac版
視覺化網頁開發工具

禪工作室 13.0.1
強大的PHP整合開發環境

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

EditPlus 中文破解版
體積小,語法高亮,不支援程式碼提示功能