鼠标点击,移动回放效果

以下内容CV大法就可以用
图片的话随便找一张就行


  1. 主要完成的是一个移动回放的效果
  2. 自己做着玩的毕竟在家无聊
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <style>
        #box {
            width: 48px;
            height: 40px;
            background: url(1.gif);
            position: absolute;
        }
    </style>
</head>

<body>
    <div id="box"></div>

    <script>
        let box = document.querySelector('#box')// 获取box
		
        let arr = [] // 定义一个空数组,获取到移动过程中鼠标的位置,最后根据这个数组来对box位置进行改变,实现对点击过后的效果实现

        document.onmousedown = function (e) {
            let res = {
                x: e.pageX,
                y: e.pageY
            }
            arr.push(res)
            // 点击时候记录点,添加到arr里面

            document.onmousemove = function (evt) {
                let res = {
                    x: evt.pageX,
                    y: evt.pageY
                }
                arr.push(res)
                // 移动过程添加点
            }
            document.onmouseup = function () {
                document.onmousemove = null;
                // 鼠标抬起清空移动事件
                console.log(arr)
				// 设置延时器 开始对数组进行删除,并对Box的left和top进行赋值
				// 删除方式可以决定box的移动轨迹,是按鼠标的正向还是反向
                let times = setInterval(function () {
                    let p = arr.pop()
                    box.style.left = p.x + 'px'
                    box.style.top = p.y + 'px'

                    console.log(arr)
                    if (arr.length == 0) {
                    // 当length等与0相当于没有鼠标移动轨迹了,就可以清除延时器
                        clearInterval(times)
                    }

                }, 100)
            }

        }
    </script>
</body>

</html>

注:娱乐用法,后面还可以点击一张图,松开一个图。纯属娱乐,。。。。。。。。。。。。。。。。。。就是闲的发慌

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
可以通过Python的Tkinter模块实现鼠标点击、记录鼠标回放的功能。 以下是一个简单的示例代码,可以记录鼠标点击的位置和时间,并且回放这些点击事件: ```python import tkinter as tk import time class App: def __init__(self, master): self.master = master self.master.bind("<Button-1>", self.click) # 绑定鼠标左键点击事件 self.master.bind("<Button-3>", self.playback) # 绑定鼠标右键点击事件 self.clicks = [] # 用于存储点击事件的列表 def click(self, event): self.clicks.append((event.x, event.y, time.time())) # 存储点击事件的位置和时间 def playback(self, event): for click in self.clicks: x, y, t = click self.master.after(int((t - self.clicks[0][2]) * 1000), self.move_mouse, x, y) # 模拟鼠标移动 time.sleep(0.1) # 暂停一段时间,以便观察 def move_mouse(self, x, y): self.master.event_generate("<Motion>", warp=True, x=x, y=y) # 模拟鼠标移动事件 root = tk.Tk() app = App(root) root.mainloop() ``` 在这个例子中,我们绑定了鼠标左键点击事件和鼠标右键点击事件。当用户点击鼠标左键时,我们将该事件的位置和时间存储在列表中。当用户点击鼠标右键时,我们回放所有存储的点击事件。 回放时,我们使用`self.master.after`函数模拟鼠标移动,`self.move_mouse`函数用于实现鼠标移动。在这个函数中,我们使用`self.master.event_generate`函数生成一个鼠标移动事件。这个事件的位置是我们从列表中读取的,事件的时间是根据前一个事件的时间和当前事件的时间计算得出的。 需要注意的是,在回放时,我们使用了`time.sleep`函数暂停一段时间,以便观察每个点击事件的效果。这个时间可以根据需要进行调整。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值