无后端完成在线翻译功能

2023-11-10 11:21

本文主要是介绍无后端完成在线翻译功能,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在线翻译

纯前端 百度翻译API localStorage本地存储 完成提取文本中的生词,并返回单词的翻译结果

项目内容

之前背单词的时候发现,直接背单词的话太枯燥,直接阅读英文书籍、报纸又有太多的单词不认识, 就想能够做个demo,直接检查出 一个英文文本中的 生词,并翻译出来。

本demo有下列内容

  • 前端界面
  • 用localStorage存储用户已近掌握的单词
  • 利用百度翻译API翻译单词

项目演示

所以项目本身不需要服务器,编写玩静态资源后可以直接托管在GitHub Page上(GitHub真是伟大的网站)

在线地址

操作演示:

演示GIF

(无法加载GIF可以自行打开该链接)

代码逻辑

代码仓库 目前项目正处于初级阶段,所以简陋,还有许多未添加的功能

目录结构

.
├── README.md
├── css
│   └── style.css
├── index.html
└── js├── getTrans.js├── getVocabulariesFromText.js└── static├── jQuery.min.js└── md5.js

其中

js/static
目录下 一个提供jQuery,另一个用于百度翻译要求的MD5加密

localStorage

从项目网站所在的便签也打开控制台,观察localStorage

我把把所有单词分为已知know,正在学习learn和未知。并把已知的单词存储在localStorage。 这样做的好处是不需要服务器,坏处是用户换个浏览器之前的内容就没了

前端页面

分为三个部分:

  • 输入框,用来等待用户输入文本
  • 提交按钮,点击后开始翻译文本框中的内容
  • 用来显示翻译结果的表格

js代码流程

为提交按钮绑定onClick时间

当用户点击提交按钮后

  • 获得输入框中的文本
  • 用正则表达式提取其中的英语单词
  • 对提取到的单词做两个处理
    • 去除重复的单词
    • 去除已经学会的单词
  • 利用百度翻译API翻译单词
  • 将返回的结果渲染到页面

仓库的代码都有注释,就不多说废话了

结语

项目还很简陋,有时间再完善下。


更多专业前端知识,请上 【猿2048】www.mk2048.com

这篇关于无后端完成在线翻译功能的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/382348

相关文章

Debian 13升级后网络转发等功能异常怎么办? 并非错误而是管理机制变更

《Debian13升级后网络转发等功能异常怎么办?并非错误而是管理机制变更》很多朋友反馈,更新到Debian13后网络转发等功能异常,这并非BUG而是Debian13Trixie调整... 日前 Debian 13 Trixie 发布后已经有众多网友升级到新版本,只不过升级后发现某些功能存在异常,例如网络转

基于Java和FFmpeg实现视频压缩和剪辑功能

《基于Java和FFmpeg实现视频压缩和剪辑功能》在视频处理开发中,压缩和剪辑是常见的需求,本文将介绍如何使用Java结合FFmpeg实现视频压缩和剪辑功能,同时去除数据库操作,仅专注于视频处理,需... 目录引言1. 环境准备1.1 项目依赖1.2 安装 FFmpeg2. 视频压缩功能实现2.1 主要功

使用Python实现无损放大图片功能

《使用Python实现无损放大图片功能》本文介绍了如何使用Python的Pillow库进行无损图片放大,区分了JPEG和PNG格式在放大过程中的特点,并给出了示例代码,JPEG格式可能受压缩影响,需先... 目录一、什么是无损放大?二、实现方法步骤1:读取图片步骤2:无损放大图片步骤3:保存图片三、示php

深度解析Python yfinance的核心功能和高级用法

《深度解析Pythonyfinance的核心功能和高级用法》yfinance是一个功能强大且易于使用的Python库,用于从YahooFinance获取金融数据,本教程将深入探讨yfinance的核... 目录yfinance 深度解析教程 (python)1. 简介与安装1.1 什么是 yfinance?

Python脚本轻松实现检测麦克风功能

《Python脚本轻松实现检测麦克风功能》在进行音频处理或开发需要使用麦克风的应用程序时,确保麦克风功能正常是非常重要的,本文将介绍一个简单的Python脚本,能够帮助我们检测本地麦克风的功能,需要的... 目录轻松检测麦克风功能脚本介绍一、python环境准备二、代码解析三、使用方法四、知识扩展轻松检测麦

Java实现TXT文件导入功能的详细步骤

《Java实现TXT文件导入功能的详细步骤》在实际开发中,很多应用场景需要将用户上传的TXT文件进行解析,并将文件中的数据导入到数据库或其他存储系统中,本文将演示如何用Java实现一个基本的TXT文件... 目录前言1. 项目需求分析2. 示例文件格式3. 实现步骤3.1. 准备数据库(假设使用 mysql

Springboot项目登录校验功能实现

《Springboot项目登录校验功能实现》本文介绍了Web登录校验的重要性,对比了Cookie、Session和JWT三种会话技术,分析其优缺点,并讲解了过滤器与拦截器的统一拦截方案,推荐使用JWT... 目录引言一、登录校验的基本概念二、HTTP协议的无状态性三、会话跟android踪技术1. Cook

基于Spring Boot 的小区人脸识别与出入记录管理系统功能

《基于SpringBoot的小区人脸识别与出入记录管理系统功能》文章介绍基于SpringBoot框架与百度AI人脸识别API的小区出入管理系统,实现自动识别、记录及查询功能,涵盖技术选型、数据模型... 目录系统功能概述技术栈选择核心依赖配置数据模型设计出入记录实体类出入记录查询表单出入记录 VO 类(用于

Qt中实现多线程导出数据功能的四种方式小结

《Qt中实现多线程导出数据功能的四种方式小结》在以往的项目开发中,在很多地方用到了多线程,本文将记录下在Qt开发中用到的多线程技术实现方法,以导出指定范围的数字到txt文件为例,展示多线程不同的实现方... 目录前言导出文件的示例工具类QThreadQObject的moveToThread方法实现多线程QC

Java使用Thumbnailator库实现图片处理与压缩功能

《Java使用Thumbnailator库实现图片处理与压缩功能》Thumbnailator是高性能Java图像处理库,支持缩放、旋转、水印添加、裁剪及格式转换,提供易用API和性能优化,适合Web应... 目录1. 图片处理库Thumbnailator介绍2. 基本和指定大小图片缩放功能2.1 图片缩放的