请问一个mouseenter的问题
来源:5-2 编程练习
精慕门1145146
2020-07-18 19:33:55
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>习题</title> <style> div { width: 300px; height: 300px; border: 1px solid red; text-align: center; line-height: 300px; } </style> </head> <body> <div></div> <script src="https://cdn.bootcss.com/jquery/3.3.1/jquery.js"></script> <script> //此处写代码 $('div').mouseenter(function(event){ $(this).text('pageX:'+event.pageX+',pageY:'+event.pageY) }) </script> </body>
为什么用mouseenter会一卡一卡的,而用mousemove就很流畅?jquery不是一般要用mouseenter吗
1回答
同学你好,对于你问题解答如下:
要分清楚mouseenter和mousemove事件的区别,如下:
(1)mouseenter事件表示鼠标移入元素时触发。
(2)mousemove事件表示鼠标在元素上移动是触发。
了解这两个事件的区别之后,再来分析同学说的使用mouseenter会一卡一卡的问题。
那是因为只有鼠标移入元素时触发这个事件,鼠标在元素上移动时,并不会触发mouseenter事件,所以只有鼠标移入元素,离开元素,再次进入元素时,才会改变div中的内容,导致同学看起来是一卡一卡的。
使用mousemove事件,鼠标在元素上移动时,就会触发该事件,改变div中的内容。导致同学感觉使用该事件事件流畅的
不是说jQuery中一般要用mouseenter,而是要根据你要实现的功能选择使用哪一个事件。
例如:你想要在鼠标移入元素时,实现某个功能,那就使用mouseenter事件,如果你想要鼠标在元素上移动时,实现某个功能,那就使用mousemove事件。
如果我的回答帮助到了你,欢迎采纳,祝学习愉快~
相似问题