可以按以下思路步骤来实现:
2、在body元素上增加一个鼠标事件监听
3、使用事件对象中的target属性,每当鼠标经过一个元素时,就把它赋值给el变量
任何时候,读取el变量的值即为鼠标当前所在的元素。
示例代码:
var el = windowdocumentbody;//声明一个变量,默认值为bodywindowdocumentbodyonmouseover = function(event){
el = eventtarget;//鼠标每经过一个元素,就把该元素赋值给变量el
consolelog('当前鼠标在', el, '元素上');//在控制台中打印该变量
}
<!DOCTYPE HTML>
<html>
<head>
<meta charset="UTF-8" />
<title>lasthtml</title>
<style>
</style>
<script type="text/javascript">
var toggleColor = function (dom)
{
if (!!domindex)
{
dominnerHTML = '把鼠标点击';
documentquerySelector ('div1')stylebackgroundColor = 'green';
// domstylebackground = 'green';
// documentgetElementsByClassName('div')[0]stylebackground = 'green';
domindex = 0;
}
else
{
dominnerHTML = 'thank you';
documentquerySelector ('div1')stylebackgroundColor = 'red';
// domstylebackground = 'red';
// documentgetElementsByClassName('div1')[0]stylebackground = 'red';
domindex = 1;
}
}
</script>
</head>
<body>
<div class="div1" onclick="toggleColor(this)" style="background: blue; width: 120px; height: 20px; padding: 40px; color: #fff;">把鼠标移动到上面</div>
</body>
</html>
鼠标经过d出浮动框的效果,实现方法有多种,这里列举2种常用的解决方法。代码直接贴上来不能正常显示,看附件。
方法A:
把浮动div和触发元素a放于同一个父级元素内,鼠标经过父级元素时触发显示。这样鼠标移动到div时仍然处于该父级元素内,则div不会隐藏。
方法B:
鼠标经过a时d出div,鼠标离开a时设置一个计时器用来关闭div,如果鼠标移动到div后则清除计时器。
把div设置成相对定位或绝对定位,总之是让其拥有left,top值,
当鼠标移进div的时候获取鼠标的坐标,
用鼠标的left减去div的left值就是鼠标在div里面的left值,即鼠标在div中的x坐标,
同理,
用鼠标的top值减去div的top值就是鼠标在div里面的top值,即鼠标在div中的y坐标
这样我们就获取了鼠标在div中的位置了
function fn1(obj){
var $li = $(obj)parent();
var spclass = $lidata("spclass");
}
添加onmouseover 事件即鼠标移入对象时触发的时间js自动切换 用的是js的定时器方法吧添加onmouseover 事件方法中可以写一段脚本 终止定时器的作用。则可以停止切换onmouseout 在鼠标从元素上离开后会触发的事件 可以再写方法让定时器生效。还有什么不明白的可以追问
以上就是关于js 判断当前鼠标在哪个元素上全部的内容,包括:js 判断当前鼠标在哪个元素上、有关js中通过类名获取元素问题、js鼠标移动到某元素显示div的问题!等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)