华为云弹性服务器网站备案转入教程,弹幕网站很复杂?教你10分钟在华为云鲲鹏弹性云服务器上部署好!...

本文主要是介绍华为云弹性服务器网站备案转入教程,弹幕网站很复杂?教你10分钟在华为云鲲鹏弹性云服务器上部署好!...,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

b76881bf3040f9032b5cd45244716e57.png

开发思路

首先是让弹幕的随机高度出现,这个计算方法是:最大高度=屏幕的高度-发送div的高度-弹幕本身的高度,范围就是 0-最大高度了,弹幕总是从右往左移动,所以出现最右侧的位置计算方法是:最右侧位置=屏幕的宽度-弹幕本身的宽度;接下来就是设置随机颜色,颜色按照‘#aabbcc’这种格式,利用Math.random()随机数生成;最后是弹幕的发送,首先是获取输入框中的值,然后新创建一个div,并设置随机颜色、位置等属性,调用init() 函数。

总结如下步骤:

1、获取弹幕对象:随机高度、初始化颜色

2、水平期间设置范围:浏览器宽度-弹幕对象的高度

3、移动功能函数:定时器 setInterval

4、实现用户发表弹幕

用到的知识点

1、首先页面搭建,就是这些东西是如何摆放的——html+css布局

2、弹幕字体的位置和样色设置——css样式

3、可以输入文字然后点击可以发送弹幕——按钮的点击事件

4、字体可以旋转——css动画

5、弹幕字体可以从右往左滑动——js控制字体对象的style属性

代码块

style代码

* {

margin: 0;

padding: 0;

}

.screen {

width: 100%;

height: 100%;

position: absolute;

top: 0;

left: 0;

}

.send {

width: 100%;

height: 76px;

background: #333;

position: absolute;

bottom: 0;

left: 0;

text-align: center;

line-height: 76px;

}

.send .s_txt {

width: 600px;

height: 36px;

border: 0;

border-radius: 3px 0 0 3px;

font-size: 16px;

line-height: 36px;

}

.send .s_sub {

width: 100px;

height: 37px;

background: #65c33d;

border: 0;

font-size: 14px;

color: #fff;

border-radius: 0 3px 3px 0;

cursor: pointer;

}

.send .s_sub:hover {

background: #3eaf0e;

}

.screen div {

position: absolute;

top: 76px;

left: 0;

font-size: 22px;

color: red;

}

.magictime {

animation-duration: 1s;

animation-name: magictime;

}

@keyframes magictime {

0% {

opacity: 0;

transform-origin: 100% 0;

transform: scale(0, 0) rotate(360deg) translateY(100%);

}

30% {

transform-origin: 100% 0;

transform: scale(0, 0) rotate(360deg) translateY(100%);

}

100% {

opacity: 1;

transform-origin: 0 0;

transform: scale(1, 1) rotate(0deg) translateY(0);

}

}

弹幕滚动div代码

这是一条弹幕!
这是另一条弹幕!
老黄最帅~~~
没错,这又是一条弹幕!
这里都是弹幕
前方高能!!!

发送弹幕div代码

javascript逻辑代码

var oShowList = document.querySelectorAll(".screen div")

var oShow = document.querySelector(".screen")

var oSend = document.querySelector(".send")

var oText = document.querySelector(".s_txt")

var oBtn = document.querySelector("#send_sub")

oBtn.onclick = function () {

var oDiv = document.createElement("div")

oDiv.innerHTML = oText.value;

oDiv.className = "magictime";

oShow.appendChild(oDiv)

init(oDiv)

oText.value = ""

}

for (var i = 0; i < oShowList.length; i++) {

init(oShowList);

}

function init(obj) {

var screenHeight = document.documentElement.clientHeight;//获取浏览器高度

var screenWidth = document.documentElement.clientWidth;//获取浏览器宽度

var sendHeight = oSend.clientHeight;

var maxTop = screenHeight - sendHeight - obj.clientHeight;

var maxLeft = screenWidth - obj.clientWidth;

obj.style.top = Math.random() * maxTop + "px"

obj.style.left = maxLeft + "px"

obj.style.color = randomColor()

move(obj, maxLeft)

}

function randomColor() {

var color = "#";

for (var i = 0; i < 6; i++) {

color += Math.floor(Math.random() * 16).toString(16)

}

return color;

}

function move(obj, maxLeft) {

maxLeft -= 3;

if (maxLeft > -obj.clientWidth) {

obj.style.left = maxLeft + "px"

requestAnimationFrame(function () {

move(obj, maxLeft)

});

} else {

oShow.removeChild(obj)

}

}

安装部署

首先领取一个月的免费服务器,如果通过我这里注册,还可以领取200元的代金券,可多购买两个月的服务器领取地址,然后系统选择Ubuntu 18.04 server 64bit,设置密码,领取后按照以下步骤初始化:

首先修改一下安全组,点击控制台-弹性云服务器,点击实例名字

b722b2acbee477a2ae2c6629479c5c3c.png

点击安全组-更改安全组

3f17ea0c03736da4b7528acac8841cb0.png

添加以下端口配置

9e7842dc73e658bd2602e91c047e7928.png

在网页上远程登录

7d7a6bf4d8d749af8d028f3a8a5fc414.png

也可以通过xshell登录,用户名为root,密码为之前设置的,如果忘了可以选择重置系统

21856bcc0f786d4495c8bd5287abcc1a.png

安装nginx

更新一下系统

apt-get update

# 安装:

apt-get install nginx

# 安装上传工具

apt install lrzsz

配置nginx

# 上传弹幕的文件

cd /var/www/htm/

rz # 选取弹幕网页文件 index.html,可在附件下载

# 启动:

nginx -c /etc/nginx/nginx.conf

# 访问

访问自己的公网IP即可,老黄的是 http://124.70.138.209/

开发视频

好啦,最后在附上相关素材,以上就是开发一个可以发送弹幕网站的完整过程了,怎么样学会了吗?没学会,那就重新再看一遍吧~~~~

大家还可以免费学习WEB前端全栈教程,各位小伙伴们一起来学习吧~,传送门--->WEB前端全栈成长计划

这篇关于华为云弹性服务器网站备案转入教程,弹幕网站很复杂?教你10分钟在华为云鲲鹏弹性云服务器上部署好!...的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

Nginx屏蔽服务器名称与版本信息方式(源码级修改)

《Nginx屏蔽服务器名称与版本信息方式(源码级修改)》本文详解如何通过源码修改Nginx1.25.4,移除Server响应头中的服务类型和版本信息,以增强安全性,需重新配置、编译、安装,升级时需重复... 目录一、背景与目的二、适用版本三、操作步骤修改源码文件四、后续操作提示五、注意事项六、总结一、背景与

SpringBoot集成redisson实现延时队列教程

《SpringBoot集成redisson实现延时队列教程》文章介绍了使用Redisson实现延迟队列的完整步骤,包括依赖导入、Redis配置、工具类封装、业务枚举定义、执行器实现、Bean创建、消费... 目录1、先给项目导入Redisson依赖2、配置redis3、创建 RedissonConfig 配

通过Docker容器部署Python环境的全流程

《通过Docker容器部署Python环境的全流程》在现代化开发流程中,Docker因其轻量化、环境隔离和跨平台一致性的特性,已成为部署Python应用的标准工具,本文将详细演示如何通过Docker容... 目录引言一、docker与python的协同优势二、核心步骤详解三、进阶配置技巧四、生产环境最佳实践

Nginx部署HTTP/3的实现步骤

《Nginx部署HTTP/3的实现步骤》本文介绍了在Nginx中部署HTTP/3的详细步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学... 目录前提条件第一步:安装必要的依赖库第二步:获取并构建 BoringSSL第三步:获取 Nginx

Web服务器-Nginx-高并发问题

《Web服务器-Nginx-高并发问题》Nginx通过事件驱动、I/O多路复用和异步非阻塞技术高效处理高并发,结合动静分离和限流策略,提升性能与稳定性... 目录前言一、架构1. 原生多进程架构2. 事件驱动模型3. IO多路复用4. 异步非阻塞 I/O5. Nginx高并发配置实战二、动静分离1. 职责2

redis-sentinel基础概念及部署流程

《redis-sentinel基础概念及部署流程》RedisSentinel是Redis的高可用解决方案,通过监控主从节点、自动故障转移、通知机制及配置提供,实现集群故障恢复与服务持续可用,核心组件包... 目录一. 引言二. 核心功能三. 核心组件四. 故障转移流程五. 服务部署六. sentinel部署

基于C#实现PDF转图片的详细教程

《基于C#实现PDF转图片的详细教程》在数字化办公场景中,PDF文件的可视化处理需求日益增长,本文将围绕Spire.PDFfor.NET这一工具,详解如何通过C#将PDF转换为JPG、PNG等主流图片... 目录引言一、组件部署二、快速入门:PDF 转图片的核心 C# 代码三、分辨率设置 - 清晰度的决定因

Linux搭建ftp服务器的步骤

《Linux搭建ftp服务器的步骤》本文给大家分享Linux搭建ftp服务器的步骤,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录ftp搭建1:下载vsftpd工具2:下载客户端工具3:进入配置文件目录vsftpd.conf配置文件4:

Java Scanner类解析与实战教程

《JavaScanner类解析与实战教程》JavaScanner类(java.util包)是文本输入解析工具,支持基本类型和字符串读取,基于Readable接口与正则分隔符实现,适用于控制台、文件输... 目录一、核心设计与工作原理1.底层依赖2.解析机制A.核心逻辑基于分隔符(delimiter)和模式匹

Java实现复杂查询优化的7个技巧小结

《Java实现复杂查询优化的7个技巧小结》在Java项目中,复杂查询是开发者面临的“硬骨头”,本文将通过7个实战技巧,结合代码示例和性能对比,手把手教你如何让复杂查询变得优雅,大家可以根据需求进行选择... 目录一、复杂查询的痛点:为何你的代码“又臭又长”1.1冗余变量与中间状态1.2重复查询与性能陷阱1.