国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

首頁 web前端 css教程 我可以開車嗎?編寫酒精測試儀代碼

我可以開車嗎?編寫酒精測試儀代碼

Nov 10, 2024 pm 09:01 PM

在我居住的丹麥,不幸的是,我們在歐洲保持著一項(xiàng)記錄:我們的孩子是歐洲大陸飲酒最多的人。正因?yàn)槿绱耍藗兎浅jP(guān)注減少青少年飲酒量并教育孩子們了解酒精的影響。

我為當(dāng)?shù)貙W(xué)校編寫了一個(gè) HTML 和 JavaScript 酒精計(jì)算器,向?qū)W生展示酒精如何影響身體以及如何計(jì)算血液酒精含量 (BAC)。

BAC是如何計(jì)算的?

要估算 BAC 或“promille”,您需要一些關(guān)鍵信息:

  • 您的體重 – 因?yàn)檩^大的身體比較小的身體更能稀釋酒精。
  • 生物性別 – 由于體內(nèi)水分含量不同,從而影響酒精在體內(nèi)的分布。
  • 消耗的酒精單位數(shù) – 因?yàn)槊糠N飲料都有不同的酒精濃度。

計(jì)算酒精單位

不同的飲料會(huì)向您的血液貢獻(xiàn)不同量的酒精,具體取決于其體積和酒精濃度。為了標(biāo)準(zhǔn)化,酒精的單位計(jì)算通常如下:

volume (cl) * alcohol percentage * 0.8 / 120

結(jié)構(gòu)

整個(gè)“應(yīng)用程序”的結(jié)構(gòu)是一個(gè)

;具有有組織的字段集和命名控件,可以輕松地使用以下方式提取必要的元素:
const { add, addbeverage, etc. } = app.elements;

由于BAC限制因地區(qū)而異,我們需要首先選擇地區(qū),調(diào)整體重滑塊,并選擇生物性別:

Can I Drive? Coding an Alcohol Tester


接下來,我們可以開始添加飲料了:

Can I Drive? Coding an Alcohol Tester

這是一個(gè)簡單的

,其中單位、體積和酒精百分比的各個(gè)字段均被禁用(并通過 CSS 隱藏),直到您從飲料選擇器中進(jìn)行選擇:

Can I Drive? Coding an Alcohol Tester

這些字段的可見性由enableElements函數(shù)控制:

[percentage, units, volume].forEach(el => el.disabled = !bool);

當(dāng)我們添加飲料時(shí),會(huì)創(chuàng)建一份消耗飲料列表,并計(jì)算 BAC、預(yù)計(jì)醒酒時(shí)間等:

Can I Drive? Coding an Alcohol Tester

然后您可以繼續(xù)添加更多飲料,BAC 也會(huì)相應(yīng)更新:

Can I Drive? Coding an Alcohol Tester

令我非常驚訝的是,美國的合法BAC是瑞典或挪威的四倍!

換句話說,在瑞典,您可能吊銷執(zhí)照,因?yàn)轱嬀屏窟_(dá)到了美國法律允許的量


分解 BAC 計(jì)算

BAC的核心計(jì)算在calculateAnswer函數(shù)中處理:

volume (cl) * alcohol percentage * 0.8 / 120

讓我們來分解一下:

  1. 酒精代謝率:alcoholMetabolismRate = 0.015

    • 該值代表身體每小時(shí)減少 BAC 的平均速率(約 0.015%)。
  2. 計(jì)算當(dāng)前 BAC: currentBAC = ((total * 10) / ((weight.valueAsNumber * 1000) * parseFloat(bodywater.value))) * 100

    • 總計(jì) * 10:這會(huì)將消耗的總酒精單位轉(zhuǎn)換為克(因?yàn)?1 個(gè)單位約等于 10 克純酒精)。
    • weight.valueAsNumber * 1000:將體重從公斤轉(zhuǎn)換為克以供計(jì)算。
    • bodywater.value:基于生物性別的小數(shù)因子,影響酒精在體內(nèi)的分布(例如,男性為 0.58,女性為 0.49)。
    • 然后將結(jié)果乘以 100,將 BAC 轉(zhuǎn)換為百分比。
  3. 估計(jì)清醒時(shí)間:hoursToSober = (currentBAC / alcoholMetabolismRate).toFixed(1);

    • 將當(dāng)前 BAC 除以新陳代謝率即可估算 BAC 達(dá)到零所需的時(shí)間。
  4. 判斷合法駕駛狀態(tài): canDrive = currentBAC

    • 將當(dāng)前 BAC 與選定的法定 BAC 限值進(jìn)行比較。如果當(dāng)前BAC在限制范圍內(nèi),則認(rèn)為用戶“適合駕駛”;否則,他們就不是。

calculateAnswer 函數(shù)然后將這些值組合成一條消息,顯示當(dāng)前的 BAC、清醒前的小時(shí)數(shù)以及用戶是否適合駕駛。


…本教程就到此結(jié)束。如果您愿意,可以隨意嘗試 CodePen——也許可以創(chuàng)建一個(gè)對兒童更友好的用戶體驗(yàn)。請記住,該工具提供了估計(jì)值,但沒有考慮您飲用每種飲料的時(shí)間等因素。請記住,它很可能會(huì)被清醒的人使用!


演示


封面由DALL·E,提示:以類似于早期迪士尼和茶杯頭的卡通風(fēng)格生成一輛醉車,作為圖像我可以裁剪到1000x420px。

以上是我可以開車嗎?編寫酒精測試儀代碼的詳細(xì)內(nèi)容。更多信息請關(guān)注PHP中文網(wǎng)其他相關(guān)文章!

本站聲明
本文內(nèi)容由網(wǎng)友自發(fā)貢獻(xiàn),版權(quán)歸原作者所有,本站不承擔(dān)相應(yīng)法律責(zé)任。如您發(fā)現(xiàn)有涉嫌抄襲侵權(quán)的內(nèi)容,請聯(lián)系admin@php.cn

熱AI工具

Undress AI Tool

Undress AI Tool

免費(fèi)脫衣服圖片

Undresser.AI Undress

Undresser.AI Undress

人工智能驅(qū)動(dòng)的應(yīng)用程序,用于創(chuàng)建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用于從照片中去除衣服的在線人工智能工具。

Clothoff.io

Clothoff.io

AI脫衣機(jī)

Video Face Swap

Video Face Swap

使用我們完全免費(fèi)的人工智能換臉工具輕松在任何視頻中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費(fèi)的代碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

功能強(qiáng)大的PHP集成開發(fā)環(huán)境

Dreamweaver CS6

Dreamweaver CS6

視覺化網(wǎng)頁開發(fā)工具

SublimeText3 Mac版

SublimeText3 Mac版

神級代碼編輯軟件(SublimeText3)

如何僅在某些頁面上包括CSS? 如何僅在某些頁面上包括CSS? Jun 11, 2025 am 12:01 AM

選擇性包含CSS在特定頁面上的方法有三種:1.內(nèi)聯(lián)CSS,適用于不常訪問或需要獨(dú)特樣式的頁面;2.使用JavaScript條件加載外部CSS文件,適合需要靈活性的情況;3.服務(wù)器端包含,適用于使用服務(wù)器端語言的場景。這種方法可以優(yōu)化網(wǎng)站性能和可維護(hù)性,但需平衡模塊化與性能。

Flexbox與網(wǎng)格:了解CSS布局的關(guān)鍵差異 Flexbox與網(wǎng)格:了解CSS布局的關(guān)鍵差異 Jun 10, 2025 am 12:03 AM

flexboxisidealforone-dimensionAllayouts,while gridsuitStwo,complex layouts.useflexboxforaligningItemsinasingLeaxisAndGridForRidForPreciseconcontroloverroverroverroverroverroverroverrowsandsininintricatientricatedesigns。

使用HTML彈出案創(chuàng)建自動(dòng)關(guān)閉通知 使用HTML彈出案創(chuàng)建自動(dòng)關(guān)閉通知 Jun 10, 2025 am 09:45 AM

HTML彈出屬性將元素轉(zhuǎn)換為頂層元素,可以使用按鈕或JavaScript打開和關(guān)閉??梢詫棾霭格g回多種方式,但是沒有選擇自動(dòng)關(guān)閉它們。 preethi有一種技術(shù),你可以

什么是'渲染障礙CSS”? 什么是'渲染障礙CSS”? Jun 24, 2025 am 12:42 AM

CSS會(huì)阻塞頁面渲染是因?yàn)闉g覽器默認(rèn)將內(nèi)聯(lián)和外部CSS視為關(guān)鍵資源,尤其是使用引入的樣式表、頭部大量內(nèi)聯(lián)CSS以及未優(yōu)化的媒體查詢樣式。1.提取關(guān)鍵CSS并內(nèi)嵌至HTML;2.延遲加載非關(guān)鍵CSS通過JavaScript;3.使用media屬性優(yōu)化加載如打印樣式;4.壓縮合并CSS減少請求。建議使用工具提取關(guān)鍵CSS,結(jié)合rel="preload"異步加載,合理使用media延遲加載,避免過度拆分與復(fù)雜腳本控制。

如何在無花果中使用Lotties 如何在無花果中使用Lotties Jun 14, 2025 am 10:17 AM

在接下來的教程中,我將向您展示如何在無花果中創(chuàng)建Lottie動(dòng)畫。我們將使用兩種彩色設(shè)計(jì)來超越如何在無花果上進(jìn)行動(dòng)畫,然后向您展示如何從Figma到Lottie動(dòng)畫。您只需要免費(fèi)無花果

打破邊界:用(s)CSS構(gòu)建湯姆拼圖 打破邊界:用(s)CSS構(gòu)建湯姆拼圖 Jun 13, 2025 am 11:33 AM

我們對其進(jìn)行了測試,事實(shí)證明,至少在低級邏輯和拼圖行為時(shí),Sass可以替換JavaScript。除了地圖,混音,功能和大量數(shù)學(xué)外,我們都設(shè)法使我們的Tangram難題栩栩如生,沒有J

外部與內(nèi)部CSS:最好的方法是什么? 外部與內(nèi)部CSS:最好的方法是什么? Jun 20, 2025 am 12:45 AM

thebestapphachforcssdepprodsontheproject'sspefificneeds.forlargerprojects,externalcsSissBetterDuoSmaintoMaintainability andReusability; forsMallerProjectsorsingle-pageApplications,InternaltCsmightBemoresobleable.InternalCsmightBemorese.it.it'sclucialtobalancepopryseceneceenceprodrenceprodrenceNeed

我的CSS必須在較低的情況下嗎? 我的CSS必須在較低的情況下嗎? Jun 19, 2025 am 12:29 AM

否,CSSDOESNOTHAVETOBEINLOWERCASE.CHOMENDENS,使用flowercaseisrecommondendendending:1)一致性和可讀性,2)避免使用促進(jìn)性技術(shù),3)潛在的Performent FormanceBenefits,以及4)RightCollaboraboraboraboraboraboraboraboraboraboraboraboraboraboraboraboraborationWithInteams。

See all articles