搜尋
首頁web前端css教學帶你使用CSS+jQuery實現一個文字轉語音機器人

這篇文章手把手帶大家使用CSS jQuery實現一個文字轉語音機器人,希望對大家有幫助!

帶你使用CSS+jQuery實現一個文字轉語音機器人

素材

  • #機器眼睛

    帶你使用CSS+jQuery實現一個文字轉語音機器人

【推薦學習:css影片教學jQuery影片教學web前端影片

頁面佈局

機器人樣式參考了下圖,透過css拼造型的方式來實現。部分還原了設計圖

帶你使用CSS+jQuery實現一個文字轉語音機器人

  • #頭頂部分 頭頂部分是一個圓 偽類after實作白點
 <div class="tianxian"></div>
 .tianxian{
    width: 35px;
    height: 35px;
    border-radius: 50%;
    background: #0e58cc;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    margin: auto;
  }
  .tianxian::after{
    content: &#39;&#39;;
    display: block;
    width: 5px;
    height: 10px;
    border-radius: 12px;
    background: #fff;
    position: absolute;
    top: 10px;
    left: 5px;
    transform: rotateZ(20deg);
  }

整體佈局採用絕對定位佈局 利用整個頭部,實現耳朵和眼睛的定位

<div class="head">
      <div class="erduo"></div>
      <div class="erduo"></div>
      <div class="face">
        <div class="eye"></div>
        <div class="eye"></div>
      </div>
    </div>
  • 立體效果 透過box-shadow 的inset特性,透過適當偏移x,y軸,實現內陰影的立體效果
 box-shadow: -5px -5px 30px 1px #0075af inset;
  • 文字轉語音實現

基於瀏覽器提供的SpeechSynthesisUtterance Api進行實現

SpeechSynthesisUtterance基本屬性

  • SpeechSynthesisUtterance.lang 獲取並設定話語的語言
  • SpeechSynthesisUtterance.pitch 取得並設定話語的音調(值越大越尖銳,越低越低沉)
  • SpeechSynthesisUtterance.rate 取得並設定說話的速度(值越大語速越快,越小語速越慢)
  • SpeechSynthesisUtterance.text 取得並設定說話時的文字
  • SpeechSynthesisUtterance.voice  取得並設定說話的聲音
  • SpeechSynthesisUtterance.volume 取得並設定說話的音量

SpeechSynthesisUtterance.text基本方法

  • SpeechSynthesisUtterance.text基本方法
  • #SpeechSynthesisUtterance.text基本方法
  • speak() 將對應的實例加入語音佇列中
  • #cancel() 刪除佇列中所有的語音.如果正在播放,則直接停止

pause()

 暫停語音

resume() 恢復暫停的語音

為按鈕新增點擊事件,取得input輸入框的值,並進行播放,新增眼睛動畫,並在播放結束的回呼移除眼睛動畫

$(&#39;#btn&#39;).click(function () {
      let text = $(&#39;#input&#39;).val()
      if (text) {
        $(&#39;.eye&#39;).addClass(&#39;shine&#39;)
      }
      let u = new window.SpeechSynthesisUtterance()
      u.text = text
      u.lang = &#39;zh&#39;
      u.rate = 0.7
      u.onend = function () {
        $(&#39;.eye&#39;).removeClass(&#39;shine&#39;)
      }
      speechSynthesis.speak(u)
    })

動畫類別:

 .shine {
    animation: shine 1s linear infinite;
  }
  @keyframes shine {
    0%{
      height: 100px;
    }
    100%{
      height: 0px;
    }
  }

完整程式碼:

HTML CSS###


 
  
<div class="head"> <div class="erduo"></div> <div class="erduo"></div> <div class="face"> <div class="eye"></div> <div class="eye"></div> </div> </div>
点击朗读
###js######
 $(function () {
    $(&#39;#btn&#39;).click(function () {
      let text = $(&#39;#input&#39;).val()
      if (text) {
        $(&#39;.eye&#39;).addClass(&#39;shine&#39;)
      }
      let u = new window.SpeechSynthesisUtterance()
      u.text = text
      u.lang = &#39;zh&#39;
      u.rate = 0.7
      u.onend = function () {
        $(&#39;.eye&#39;).removeClass(&#39;shine&#39;)
      }
      speechSynthesis.speak(u)
    })
  })
###更多程式相關知識,請造訪:###程式設計教學###! ! ###

以上是帶你使用CSS+jQuery實現一個文字轉語音機器人的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文轉載於:掘金社区。如有侵權,請聯絡admin@php.cn刪除
保證金是什麼:40px 100px 120px 80px表示?保證金是什麼:40px 100px 120px 80px表示?Apr 28, 2025 pm 05:31 PM

文章討論了CSS保證金屬性,特別是“保證金:40px 100px 120px 80px”,其應用程序以及對網頁佈局的影響。

什麼是不同的CSS邊框特性?什麼是不同的CSS邊框特性?Apr 28, 2025 pm 05:30 PM

本文討論了CSS邊境屬性,重點是自定義,最佳實踐和響應能力。主要論點:邊境 - 拉迪烏斯(Border-Radius)對響應式設計最有效。

什麼是CSS背景,列出屬性?什麼是CSS背景,列出屬性?Apr 28, 2025 pm 05:29 PM

本文討論了CSS背景屬性,它們在增強網站設計方面的用途以及避免的常見錯誤。重點是使用背景大小的響應式設計。

什麼是CSS HSL顏色?什麼是CSS HSL顏色?Apr 28, 2025 pm 05:28 PM

文章討論了CSS HSL顏色,其在網絡設計中的使用以及比RGB的優勢。主要重點是通過直觀的顏色操縱來增強設計和可訪問性。

我們如何在CSS中添加評論?我們如何在CSS中添加評論?Apr 28, 2025 pm 05:27 PM

本文討論了CSS中評論的使用,詳細介紹了單線和多行評論語法。它認為註釋可以增強代碼的可讀性,可維護性和協作,但如果無法正確管理,可能會影響網站性能。

什麼是CSS選擇器?什麼是CSS選擇器?Apr 28, 2025 pm 05:26 PM

本文討論了CSS選擇器,其類型和用於造型HTML元素的用法。它比較ID和類選擇器,並與復雜的選擇器解決性能問題。

哪種類型的CSS持有最高優先級?哪種類型的CSS持有最高優先級?Apr 28, 2025 pm 05:25 PM

本文討論了CSS優先級,重點是具有最高特異性的內聯風格。它解釋了特異性級別,覆蓋方法和用於管理CSS衝突的工具。

我們可以通過幾種方式將CSS添加到我們的HTML文件中?我們可以通過幾種方式將CSS添加到我們的HTML文件中?Apr 28, 2025 pm 05:24 PM

文章討論了將CSS添加到HTML的三種方法:內聯,內部和外部。分析了每種方法對網站性能和適合初學者的適用性的影響。 (159個字符)

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

EditPlus 中文破解版

EditPlus 中文破解版

體積小,語法高亮,不支援程式碼提示功能

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

SublimeText3 Mac版

SublimeText3 Mac版

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

Atom編輯器mac版下載

Atom編輯器mac版下載

最受歡迎的的開源編輯器