Vue 获取鼠标位置坐标
创作时间:
作者:
@小白创作中心
Vue 获取鼠标位置坐标
引用
CSDN
1.
https://blog.csdn.net/u013243347/article/details/81179422
在Vue项目中,我们可能有获取鼠标信息的需求来处理业务逻辑。下面,我们将通过介绍touch事件,来获取鼠标位置。
touch事件介绍
事件名 | 功能 |
---|---|
touchstart | 鼠标点击时,触发该事件一次。 |
touchmove | 当鼠标移动时,会多次调用该事件。 |
touchend | 当鼠标停止移动时,触发该事件一次。 |
Vue模板和JavaScript代码示例
<div id="app">
<div class="circle" @touchstart="touchstart" @touchmove="touchmove" ></div>
</div>
let app = new Vue({
el: '#app',
data: {
message: 'app'
},
methods: {
// 当鼠标点击时触发,类似onclick事件
touchstart(e) {
console.log('touchstart')
},
// 当鼠标移动时触发
touchmove(e) {
console.log('touchmove')
}
}
})
如何获取鼠标的x,y坐标
这就要利用事件回调中的e.targetTouches
属性了。
// 获取x 坐标
e.targetTouches[0].clientX
// 获取y 坐标
e.targetTouches[0].clientY
如何获取鼠标每次移动的差值
当鼠标移动时,如何计算得出,当前鼠标位置与上一次鼠标位置的差值呢?例如,当前鼠标位置为(1,2),上一次鼠标位置为(0,0),差值就是:x:1,y:2
methods: {
touchstart(e) {
// 获取起始坐标位置x
this.lastPosX = e.targetTouches[0].clientX
},
touchmove(e) {
// 获取当前位置x
this.curPosX = e.targetTouches[0].clientX
// 计算差值
this.diff = +(this.curPosX - this.lastPosX)
// 其他业务逻辑
// ...
// 更新lastPosX
this.lastPosX = this.curPosX
}
}
热门推荐
高考单招是什么意思 有哪些优势
漫谈口径续 最常见常见口径7.62mm和155mm的由来
奶茶的多样化分类,究竟有哪些类型?
电脑主板温度多少正常?一文为你解答
水煎服的正确服用方法
鱼油过量补充有风险,Omega-3不是越多越好!
如何计算涨停价?这些计算方法有哪些实际应用?
黄酒与中医的渊源
如何调整收费项目标准表
黄酒怎么饮用最佳?
米哈游莉莉丝的版权痛点:换张皮就成了新游戏?代表建议加强网游知识产权保护
体验旅游发展趋势与规划要点:从深度参与中理解目的地文化与历史
蚩尤:中华民族多元文化的象征
突击健身太猛不料肌肉溶了提醒:科学减重需制定个性化运动方案
银行业招人风向变了,国有四大行春招缩编,有上市银行80万年薪挖AI人才
“全麻手术”和“注射死刑”都需要麻醉,用的是同一类麻醉药吗?
治疗哮喘的穴位都有哪些
现代哲学的困惑主要以下6点:存在与意义的危机
随身WiFi也有鄙视链?一文看懂各级别差异,选对不选贵!
2025陕西一本线预测:物理类500-510分,历史类510-520分
南京旅游攻略必去景点推荐:一场穿越古今的文化与自然盛宴
电饭锅有必要买IH加热的吗?IH电饭煲和普通电饭煲哪个好?
紧凑型车和中型车区别:尺寸、空间、配置全方位对比,教你如何选择
紧凑型轿车和中型轿车有什么区别
AI Agent爆火后,MCP协议为什么如此重要!
如何设置文档的权限管理
如何理解庄子的“物物而不物于物,念念而不念于念”?
沙特女性就业率十年翻三倍:从10%到31%
如何理解庄子的“物物而不物于物,念念而不念于念”?
课程时长与教学效果:如何科学设计课程时长以提升教学质量?