Java編程Web基礎(chǔ)案例:動(dòng)態(tài)時(shí)鐘 不一樣的Java酷炫風(fēng) 附源碼亚情!

Java是一種可以撰寫跨平臺(tái)應(yīng)用軟件的面向?qū)ο蟮某绦蛟O(shè)計(jì)語言。Java 技術(shù)具有卓越的通用性哈雏、高效性楞件、平臺(tái)移植性和安全性,廣泛應(yīng)用于PC裳瘪、數(shù)據(jù)中心土浸、游戲控制臺(tái)、科學(xué)超級(jí)計(jì)算機(jī)彭羹、移動(dòng)電話和互聯(lián)網(wǎng)黄伊,同時(shí)擁有全球最大的開發(fā)者專業(yè)社群。

給你Java學(xué)習(xí)路線:html-css-js-jq-javase-數(shù)據(jù)庫-jsp-servlet-Struts2-hibernate-mybatis-spring4-springmvc-ssh-ssm

一個(gè)好的Java工程師應(yīng)該是全棧的派殷,所以最近小編我補(bǔ)習(xí)了一下Web知識(shí)还最,近期做了幾個(gè)小玩意給大家分享一下,在此也告訴大家毡惜,學(xué)Java千萬不能忽視前端哦拓轻。

打造效果如下:

小編推薦一個(gè)學(xué)Java的學(xué)習(xí)裙【 六五零,五五四经伙,六零七 】扶叉,無論你是大牛還是小白,是想轉(zhuǎn)行還是想入行都可以來了解一起進(jìn)步一起學(xué)習(xí)帕膜!裙內(nèi)有開發(fā)工具枣氧,很多干貨和技術(shù)資料分享!

動(dòng)態(tài)時(shí)鐘

接下來就是源碼了..大家看了后會(huì)不會(huì)覺得簡單垮刹。

HTML部分:

  • CSS部分:

    @import url(https://fonts.googleapis.com/css?family=Open+Sans:300);

    body{

    background:hsl(50,20%,93%);

    margin:0;

    }

    canvas{

    display:block;

    width:100%;

    height:100%;

    position: absolute;

    top: 50%;

    left: 50%;

    transform: translate(-50%, -50%);

    }

    #clock-container{

    position:absolute;

    left:50%;

    top:50%;

    transform:translate(-50%,-50%);

    font-family: "Open Sans", sans-serif;

    font-size: 8vw;

    color:hsl(0,0%,25%);

    list-style-type: none;

    padding: 0;

    margin: 0;

    display: flex;

    justify-content: center;

    align-items: center;

    li {

    &:nth-of-type(-n+2) {

    &:after {

    content:':';

    color: #666;

    }

    }

    }

    }

    JS部分:

    var c = document.body.appendChild(document.createElement("canvas")),

    w = innerWidth,

    h = innerHeight;

    c.width = w;

    c.height = h;

    var ctx = c.getContext("2d"),

    //degrees to radians conversion function

    deg2rad = d => (Math.PI / 180) * d;

    //constructor for the circles

    function radialBar(x, y, r, max, value) {

    var self = this;

    self.X = x || 0;

    self.Y = y || 0;

    self.R = r || 0;

    self.MAX = max || 1;

    self.value = value || 0;

    self.target = value || 0;

    self.update = function(v) {

    //lerp

    self.target = v > 0 ? v : 0.1;

    self.value += (self.target - self.value) * 0.05;

    ctx.arc(

    this.X,

    this.Y,

    this.R,

    //move starting point to top

    deg2rad(-90),

    deg2rad(-90) + (deg2rad(360) * (self.value / self.MAX))

    );

    }

    }

    小編推薦一個(gè)學(xué)Java的學(xué)習(xí)裙【 六五零达吞,五五四,六零七 】荒典,無論你是大牛還是小白酪劫,是想轉(zhuǎn)行還是想入行都可以來了解一起進(jìn)步一起學(xué)習(xí)吞鸭!裙內(nèi)有開發(fā)工具,很多干貨和技術(shù)資料分享契耿!

    ctx.lineWidth = 3;

    ctx.lineCap = "round";

    var spacing = 12,

    radius = 150,

    //contains values for hours, minutes, seconds

    times,

    //create circles

    circles = {

    H: new radialBar(w / 2, h / 2, radius, 12, 0),

    M: new radialBar(w / 2, h / 2, radius - spacing, 60, 0),

    S: new radialBar(w / 2, h / 2, radius - spacing - spacing, 60, 0)

    },

    //text elements

    elements = {

    H: document.getElementById("H"),

    M: document.getElementById("M"),

    S: document.getElementById("S")

    };

    //set text colors

    Object.keys(elements).forEach((k, i) =>

    elements[k].style.color =

    "hsl(" + k.charCodeAt(0) * i + ", 50%, 50%)");

    //update time values and text once per second

    function updateTime {

    var time = new Date;

    var hours = time.getHours;

    if (hours > 12) {

    hours -= 12;

    } else if (hours === 0) {

    hours = 12;

    }

    times = {

    H: hours,

    M: time.getMinutes,

    S: time.getSeconds

    };

    //update text

    Object.keys(times).forEach(k =>

    elements[k].innerHTML =

    //pad with 0s if needed

    String(times[k]).length > 1 ?

    times[k] :

    times[k] = "0" + times[k]

    );

    setTimeout(updateTime, 1000);

    }

    function draw {

    ctx.clearRect(0, 0, w, h);

    //update circles, set their color, draw

    Object.keys(circles).forEach((k, i) => {

    ctx.beginPath;

    // ctx.setLineDash([.5, 15]);

    circles[k].update(times[k]);

    ctx.strokeStyle = "hsl(" + k.charCodeAt(0) * i + ", 50%, 50%)";

    ctx.stroke;

    ctx.lineWidth=10;

    });

    requestAnimationFrame(draw);

    }

    //start

    updateTime;

    draw;

    好啦,代碼就分享到這里螃征,大家覺得是不是挺簡單的搪桂,一個(gè)好的項(xiàng)目是需要幾個(gè)小玩意的,近期會(huì)繼續(xù)分享類似小案例盯滚,大家可以關(guān)注我的動(dòng)態(tài)哦踢械!

  • 最后編輯于
    ?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
    • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市魄藕,隨后出現(xiàn)的幾起案子内列,更是在濱河造成了極大的恐慌,老刑警劉巖背率,帶你破解...
      沈念sama閱讀 211,290評(píng)論 6 491
    • 序言:濱河連續(xù)發(fā)生了三起死亡事件话瞧,死亡現(xiàn)場離奇詭異,居然都是意外死亡寝姿,警方通過查閱死者的電腦和手機(jī)交排,發(fā)現(xiàn)死者居然都...
      沈念sama閱讀 90,107評(píng)論 2 385
    • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來饵筑,“玉大人埃篓,你說我怎么就攤上這事「剩” “怎么了架专?”我有些...
      開封第一講書人閱讀 156,872評(píng)論 0 347
    • 文/不壞的土叔 我叫張陵,是天一觀的道長玄帕。 經(jīng)常有香客問我部脚,道長,這世上最難降的妖魔是什么裤纹? 我笑而不...
      開封第一講書人閱讀 56,415評(píng)論 1 283
    • 正文 為了忘掉前任睛低,我火速辦了婚禮,結(jié)果婚禮上服傍,老公的妹妹穿的比我還像新娘钱雷。我一直安慰自己,他們只是感情好吹零,可當(dāng)我...
      茶點(diǎn)故事閱讀 65,453評(píng)論 6 385
    • 文/花漫 我一把揭開白布罩抗。 她就那樣靜靜地躺著,像睡著了一般灿椅。 火紅的嫁衣襯著肌膚如雪套蒂。 梳的紋絲不亂的頭發(fā)上钞支,一...
      開封第一講書人閱讀 49,784評(píng)論 1 290
    • 那天,我揣著相機(jī)與錄音操刀,去河邊找鬼烁挟。 笑死,一個(gè)胖子當(dāng)著我的面吹牛骨坑,可吹牛的內(nèi)容都是我干的撼嗓。 我是一名探鬼主播,決...
      沈念sama閱讀 38,927評(píng)論 3 406
    • 文/蒼蘭香墨 我猛地睜開眼欢唾,長吁一口氣:“原來是場噩夢啊……” “哼且警!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起礁遣,我...
      開封第一講書人閱讀 37,691評(píng)論 0 266
    • 序言:老撾萬榮一對(duì)情侶失蹤斑芜,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后祟霍,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體杏头,經(jīng)...
      沈念sama閱讀 44,137評(píng)論 1 303
    • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
      茶點(diǎn)故事閱讀 36,472評(píng)論 2 326
    • 正文 我和宋清朗相戀三年沸呐,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了大州。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
      茶點(diǎn)故事閱讀 38,622評(píng)論 1 340
    • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡垂谢,死狀恐怖厦画,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情滥朱,我是刑警寧澤根暑,帶...
      沈念sama閱讀 34,289評(píng)論 4 329
    • 正文 年R本政府宣布,位于F島的核電站徙邻,受9級(jí)特大地震影響排嫌,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜缰犁,卻給世界環(huán)境...
      茶點(diǎn)故事閱讀 39,887評(píng)論 3 312
    • 文/蒙蒙 一淳地、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧帅容,春花似錦颇象、人聲如沸。這莊子的主人今日做“春日...
      開封第一講書人閱讀 30,741評(píng)論 0 21
    • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至麦乞,卻和暖如春蕴茴,著一層夾襖步出監(jiān)牢的瞬間劝评,已是汗流浹背。 一陣腳步聲響...
      開封第一講書人閱讀 31,977評(píng)論 1 265
    • 我被黑心中介騙來泰國打工倦淀, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留蒋畜,地道東北人。 一個(gè)月前我還...
      沈念sama閱讀 46,316評(píng)論 2 360
    • 正文 我出身青樓撞叽,卻偏偏與公主長得像姻成,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子能扒,可洞房花燭夜當(dāng)晚...
      茶點(diǎn)故事閱讀 43,490評(píng)論 2 348

    推薦閱讀更多精彩內(nèi)容

    • 首先通俗的解釋下Topic模型LDA:假如我們需要寫一篇關(guān)于新上市汽車的文章佣渴,首先需要確定文章大概的主題辫狼,比如要寫...
      chaaffff閱讀 1,900評(píng)論 0 3
    • 接下來我們看Base文件夾下的UIKIt文件夾的內(nèi)容初斑。 1.UIColor+YYAdd 這里看了這個(gè)類,里面有許多...
      充滿活力的早晨閱讀 2,255評(píng)論 0 1
    • 前言 最先接觸編程的知識(shí)是在大學(xué)里面,大學(xué)里面學(xué)了一些基礎(chǔ)的知識(shí)真椿,c語言鹃答,java語言,單片機(jī)的匯編語言等突硝;大學(xué)畢...
      oceanfive閱讀 3,048評(píng)論 0 7
    • 文/耿先生 001稻盛哲學(xué)的核心是“作為人测摔,何謂正確?”他將作為人應(yīng)該做的正確的事以正確的方式貫徹到底,這是稻盛先...
      耿先生閱讀 388評(píng)論 4 13
    • 秋日理花鞋解恰, 一理一思郎锋八。 雙雙為君添, 搖個(gè)婀娜樣护盈。
      季朗濤閱讀 207評(píng)論 0 0