css动效:气泡在屏幕上随机漂浮

博客介绍了使用React和CSS实现气泡运动效果的方法。实现方式为定位加随机改变x、y值,基于气泡大小相同的前提。具体逻辑在bubbleMovement函数,包括初始化气泡位置、方向和速度,用setInterval让气泡运动,同时监听边界和碰撞情况。

css实现气泡随机漂浮效果


实现效果

在这里插入图片描述

React代码

// 泡泡随机漂浮
// 这里的封装逻辑是基于每个泡泡大小一样进行封装的

import React,{
   
   FC,useState,useEffect,useRef} from 'react'
import styles from './index.less'

// 泡泡的背景图
import bubble1 from '../../img/bubblefloat/bubble1.png'
import bubble2 from '../../img/bubblefloat/bubble2.png'
import bubble3 from '../../img/bubblefloat/bubble3.png'
import bubble4 from '../../img/bubblefloat/bubble4.png'
import bubble5 from '../../img/bubblefloat/bubble5.png'
import bubble6 from '../../img/bubblefloat/bubble6.png'
import bubble7 from '../../img/bubblefloat/bubble7.png'


const Bubble:FC<any>  = (props)=>{
   
   

  useEffect(()=>{
   
   
      document.documentElement.style.fontSize=(document.documentElement.clientWidth/750)*100+'px';
  },[])
  

  const mainRef = useRef<any>()

  const BubblesRef = useRef<any>([])
  
  const getBubbles = (dom: any) => {
   
   
    if(!dom) return;
    BubblesRef.current.push(dom)
  }

  const bubblesArr = [
   {
   
   key:1,bgImg:bubble1},
   {
   
   key:2,bgImg:bubble2},
   {
   
   key:3,bgImg:bubble3},
   {
   
   key:4,bgImg:bubble4},
   {
   
   key:5,bgImg:bubble5},
   {
   
   key:6,bgImg:bubble6},
   {
   
   key:7,bgImg:bubble7},
  ]

 // 气泡运动的函数
  const bubbleMovement = ()=>{
   
   
        // 气泡运动区域
     const main  
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值