javascript實現的星座查詢

今天在這個網站http://xzxys.wiicha.com/看到查詢星座幸運色的效果,想研究一下代碼,結果右鍵禁用。后來參考了一下別人的代碼,琢磨著先實現了一下星座查詢的功能,輸入月份和日期四位數后,可以查詢屬于哪個星座,星座效果如下。
在這里插入圖片描述
用CSS代碼美化了一下輸入框,js代碼主要是使用了indexOf判斷是否有不合法輸入,對這個方法用得不太熟,特意拿來練手,12個月份使用switch語句判斷。完整代碼如下:

<!doctype html>
<html><head><meta charset="utf-8"><title>星座查詢</title><style>* {margin: 0;padding: 0;}h2 {text-align: center;margin-top: 80px;color:#333;}#inquire {margin: 50px auto;width: 344px;}#inquire input {float: left;outline: none;}#inquire:after {content: "";display: block;height: 0;clear: both;visibility: hidden;}#inputstar {width: 200px;height: 43px;line-height: 43px;padding-left: 20px;border: 1px solid #ccc;border-right: none;border-radius: 5px 0 0 5px;font-size: 20px;/* 左上角 左下角*/}#btn1 {width: 120px;height: 45px;line-height: 45px;border: 1px solid #ccc;background: #EAEAEA;border-radius: 0 5px 5px 0;/* 右上角 右下角*/cursor: pointer;color: #444;font-size: 16px;}.star {font-size: 36px;text-align: center;color: #ff8400;margin: 60px auto;width: 344px;}</style></head><body><h2>請輸入您的生日(示例:12月26日輸入1226,3月5日請輸入0305)</h2><div id='inquire'><input type="text" id="inputstar"><input type="button" value="查詢星座" onclick="queryStar()" id='btn1' /></div><div class='star'></div><script>function queryStar() {var starSign = document.querySelector("#inputstar").value; //獲取用戶輸入的月份和日期if (starSign.length != 4) {alert('輸入有誤,請重新輸入!');return false;}var dispStar = document.querySelector(".star");var month = starSign.substring(0, 2); //取前2位,也就是月份var date = parseInt(starSign.substring(2)); //取后2位,也就是日期,并轉換為整型var arrMonth = ['01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12']var arrDate = [01, 02, 03, 04, 05, 06, 07, 08, 09, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25,26, 27, 28, 29, 30, 31]var isMonth = arrMonth.indexOf(month);if (isMonth == -1) {alert('月份有誤!請修改輸入');return false;}var isDate = arrDate.indexOf(date)if (isDate == -1) {alert('日期有誤!請修改輸入');return false;}if ((month == "02") && (date > 29)) {alert('輸入有誤,請重新輸入!');return false;}switch (month) {case "01":if (date < 20) {dispStar.innerHTML = "摩羯座";} elsedispStar.innerHTML = "水瓶座";break;case "02":if (date < 19) {dispStar.innerHTML = "水瓶座";} else dispStar.innerHTML = "雙魚座";break;case "03":if (date < 21) {dispStar.innerHTML = "雙魚座"} else dispStar.innerHTML = "白羊座";break;case "04":if (date < 20) {dispStar.innerHTML = "白羊座";} else dispStar.innerHTML = "金牛座";break;case "05":if (date < 21) {dispStar.innerHTML = "金牛座";} else dispStar.innerHTML = "雙子座";break;case "06":if (date < 22) {dispStar.innerHTML = "雙子座";} else dispStar.innerHTML = "巨蟹座";break;case "07":if (date < 23) {dispStar.innerHTML = "巨蟹座";} else dispStar.innerHTML = "獅子座";break;case "08":if (date < 23) {dispStar.innerHTML = "獅子座";} else dispStar.innerHTML = "處女座";break;case "09":if (date < 23) {dispStar.innerHTML = "處女座";} else dispStar.innerHTML = "天秤座";break;case "10":if (date < 24) {dispStar.innerHTML = "天秤座";} else dispStar.innerHTML = "天蝎座";break;case "11":if (date < 23) {dispStar.innerHTML = "天蝎座";} else dispStar.innerHTML = "射手座";break;case "12":if (date < 22) {dispStar.innerHTML = "射手座";} else dispStar.innerHTML = "摩羯座";break;}}</script></body>
</html>

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

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

相關文章

群體風暴之錘(War3地圖編輯器)

文章目錄 0、大致原理1、創建隱形單位2、新事件開端3、環境→新條件4、動作4.1、單位組4.1.1、圓范圍內單位4.1.2、指定條件 4.2、對單位組內的所有單位釋放風暴之錘 0、大致原理 真MK向目標點釋放風暴之錘時選定&#xff08;以技能釋放點為圓心&#xff0c;設定半徑&#xff0…

Python編程語言常用的包管理工具介紹

conda是一個開源的包管理器和環境管理器&#xff0c;用于安裝、運行和更新包和它們的依賴項。conda可以用于Python編程語言&#xff0c;但它也支持其他編程語言。conda的主要特點是它能夠在不同的環境中管理不同的包集合&#xff0c;這使得它非常適合于數據科學和機器學習項目&…

洛谷 P1439 最長公共子序列

題目描述 給出 1,2,…,n 的兩個排列 P1? 和 P2? &#xff0c;求它們的最長公共子序列。 輸入格式 第一行是一個數 n。 接下來兩行&#xff0c;每行為 n 個數&#xff0c;為自然數 1,2,…,n 的一個排列。 輸出格式 一個數&#xff0c;即最長公共子序列的長度。 輸入輸出…

詳解算法的時間復雜度和空間復雜度!

目錄 ?編輯 1. 算法效率 2. 時間復雜度 2.1 時間復雜度的概念 2.2 大O的表示漸進法 2.3 一個栗子 3. 空間復雜度 4. 常見復雜度對比 5. 完結散花 ??????? 悟已往之不諫&#xff0c;知來者猶可追 創作不易&#xff0c;寶子們&#xff01;如果這篇文章對你們有…

Flex布局

Flex布局是一種用于創建靈活且自適應的布局模型&#xff0c;它使得元素能夠更好地響應不同的屏幕尺寸和設備。Flex布局基于容器和項目的概念&#xff0c;通過設置容器的屬性來控制項目的布局和對齊方式。 Flex布局的關鍵概念包括&#xff1a; 父容器&#xff08;Flex容器&…

Git實戰(3)之merge與rebase區別

1,采用merge和rebase后,git log的區別,merge命令不會保留merge的分支的commit 2,處理沖突的方式: (一股腦)使用merge命令合并分支,解決完沖突,執行git add .和 git commit -mfix conflict。這個時候會產生一個commit。(交互式)使用rebase命令合并分支,解決完沖突,…

一種求最大最小值的方法(C語言)

作者在做項目時需要分析大量數據&#xff0c;其中需要用到最大值最小值的求解。這里分享一種簡單好用的方法&#xff0c;并避免在代碼中出現過多的for循環。 這個方法用到了qsort函數。 首先我們需要定義一個比較函數用來比較2個值的大小并通過返回值來表示比較的結果。 int…

STM32標準庫開發——FLASH閃存

FLASH介紹 一般來說&#xff0c;宣傳的FLASH的大小只是說程序存儲器的大小&#xff0c;不包括系統存儲器以及選項字節這倆個部分 IAP是內置在boot loader中的一道程序&#xff0c;可以用于輔助下載&#xff0c;用戶可以通過有線通信協議或者無線協議實現對程序的更新升級。 FLA…

如何使用grafana 下JSON API訪問展示接口數據

一.新增connection 點擊左側菜單欄&#xff0c;選擇Add new connection 下載安裝即可。 二. 增加對應url和參數 1. 添加新的數據源 2. 配置對應url 3.新建儀表盤和添加接口url和參數等

LeetCode每日一題之 移動0

前言&#xff1a; 我的每日一題專欄正式開始更新&#xff0c;我會分享關于我在LeetCode上刷題時的經驗&#xff0c;將經典題型拿出來詳細講解&#xff0c;來提升自己及大家的算法能力&#xff0c;希望這篇博客對大家有幫助。 題目介紹&#xff1a; 題目鏈接&#xff1a;. - …

SpringBoot+aop實現主從數據庫的讀寫分離

讀寫分離的作用是為了緩解寫庫&#xff0c;也就是主庫的壓力&#xff0c;但一定要基于數據一致性的原則&#xff0c;就是保證主從庫之間的數據一定要一致。如果一個方法涉及到寫的邏輯&#xff0c;那么該方法里所有的數據庫操作都要走主庫。 一、環境部署 數據庫&#xff1a;…

深入了解Java虛擬機(JVM)

Java虛擬機&#xff08;JVM&#xff09;是Java程序運行的核心組件&#xff0c;它負責解釋執行Java字節碼&#xff0c;并在各種平臺上執行。JVM的設計使得Java具有跨平臺性&#xff0c;開發人員只需編寫一次代碼&#xff0c;就可以在任何支持Java的系統上運行。我們剛開始學習Ja…

【leetcode】用隊列實現棧

大家好&#xff0c;我是蘇貝&#xff0c;本篇博客帶大家刷題&#xff0c;如果你覺得我寫的還不錯的話&#xff0c;可以給我一個贊&#x1f44d;嗎&#xff0c;感謝?? 點擊查看題目 思路: 在做此題之前&#xff0c;我們先要實現隊列&#xff0c;這在上個博客中已經寫過&#…

學習人工智能的方法及方向!

目錄 一、第一部分&#xff1a;了解人工智能 二、人工智能學習路線圖 三、職業規劃 四、未來展望 五、總結 在這個信息爆炸的時代&#xff0c;想要系統性地學習人工智能&#xff08;AI&#xff09;并找到對應方向的工作&#xff0c;你需要一個明確的學習路徑和職業規劃。本…

復合機器人是一種集成了移動機器人

復合機器人是一種集成了移動機器人、協作機器人和機器視覺等多項功能的新型機器人。它的開發目的是為了解決工廠物流中最后一米的問題&#xff0c;提供智能搬運解決方案。復合機器人不僅集成了自主移動機器人&#xff08;AMR&#xff09;、機械臂等工作單元&#xff0c;還使用了…

Java電梯模擬

Java電梯模擬 文章目錄 Java電梯模擬前言一、UML類圖二、代碼三、測試 前言 此程序為單線程簡單模擬電梯(初版)&#xff0c;如果存在問題或者設計不合理的地方&#xff0c;請大家幫忙指出。 一、UML類圖 二、代碼 電梯調度器 package cn.xx.evevator;import java.util.*;pub…

#LLM入門|Prompt#2.1_第二部分:搭建基于 ChatGPT 的問答系統_簡介_Introduction

《第二部分&#xff1a;搭建基于 ChatGPT 的問答系統》&#xff01; 本部分基于吳恩達老師與OpenAI合作開發的課程《Building Systems with the ChatGPT API》創作&#xff0c;旨在指導開發者基于ChatGPT的API進行智能問答系統的構建。 課程內容 課程背景&#xff1a; 使用C…

Web3游戲基礎設施提供商Stardust為Sui上的游戲開發者提供支持

Stardust將其在錢包服務&#xff08;wallets-as-a-service&#xff09;基礎設施和用戶獲取平臺方面的專業知識帶到了Sui&#xff0c;為游戲開發者提供了關鍵的幫助&#xff0c;以吸引玩家。近日&#xff0c;Stardust公司宣布將為Sui游戲開發者調整其成熟的錢包服務&#xff08;…

MySQL:開始深入其數據(四)select子查詢

select眼熟吧?(都三節了) 又開始學習了 在 MySQL 中&#xff0c;子查詢&#xff08;subquery&#xff09;是指在一個查詢內嵌套另一個完整的 SELECT 語句。子查詢可以嵌套在 SELECT、INSERT、UPDATE、DELETE 語句中&#xff0c;用于從內部查詢結果中獲取數據&#xff0c;進而完…

vue3 的await async

在 Vue 3&#xff08;以及大多數現代的 JavaScript 環境中&#xff09;中&#xff0c;async 和 await 是用來處理異步操作的關鍵字。這些關鍵字使你能夠以同步的方式編寫異步代碼&#xff0c;使代碼更加易讀、易寫&#xff0c;并且有助于管理異步流程。 async async 關鍵字用…