js问题,如何当鼠标停留到某个连接上时获得当前鼠标位置和连接地址,并存入变量

js问题,如何当鼠标停留到某个连接上时获得当前鼠标位置和连接地址,并存入变量,第1张

<html>

<head>

<script language="javascript" type="text/javascript">

<!--

var domType = '';

if (documentall) {

domType = "ie4";

} else if (documentgetElementById) {

domType = "std";

} else if (documentlayers) {

domType = "ns4";

}

function initMouseMove(){

if(!documentall){

documentcaptureEvents(EventMOUSEMOVE);

}

documentonmousemove = mouseMove;

}

function mouseMove(e){

var x,y;

if(!documentall){

fetch_object("txt")value="move";

//fetch_object("txt2")value="move";

x=epageX;

y=epageY;

}else{

x=documentbodyscrollLeft+eventclientX;

y=documentbodyscrollTop+eventclientY;

//z=documentalllinks[0]outerHTML;

}

links=documentalltags("A");

//documentwrite("<font size='2'>"+links[0]outerHTML+"</font><br>")

fetch_object("txt")value=x+":"+y;

//fetch_object("txt2")value=documentlinksinnerText;

}

var objects=new Array();

function fetch_object(idname, forcefetch) {

if (forcefetch || typeof(objects[idname]) == "undefined") {

switch (domType) {

case "std": {

objects[idname] = documentgetElementById(idname);

}

break;

case "ie4": {

objects[idname] = documentall[idname];

}

break;

case "ns4": {

objects[idname] = documentlayers[idname];

}

break;

}

}

return objects[idname];

}

-->

</script>

<title>get mouse position</title>

</head>

<body onload="initMouseMove()">

鼠标位置:<input id="txt"/>

链接地址:<input id="txt2"/>

<br>

(暂时没有找到如何获取鼠标当前所指向的链接地址的方法)

<br>

<br>

<a href="dd" >abc</a>

<a href="11">123</a>

</body>

</html>

复制以上代码。

暂时没有找到如何获取鼠标当前所指向的链接地址的方法,不好意思。

和楼主提出的问题类似有:

>

分析该过程,可拆分成两个步骤:

该布局基于 element-ui,一个父容器 box,里面一个 mask div,一个 el-checkbox-group 块。其中父容器设置 position: relative; 子 mask 容器设置 position: absolute;并且其宽、高、偏移值根据鼠标当前位置动态计算

该部分逻辑实际上可拆分为 4 个步骤:

1 给 box 绑定 mousedown 事件

2 mousemove 事件,比较简单,只是更新 end_x,end_y 坐标

3 mouseup 事件,移除 mousemove、mouseup 事件,并调用判断方法

4 处理框选逻辑

难点是如何判断元素是否被框选住

问题可转化为 框选矩形是否与 checkbox 矩形 相交或者包含在内,即 两矩形是否相交或者存在包含关系

假定矩形 A1 左上角坐标为 (x1,y1);矩形宽度为 width1,高度为 height1;

假定矩形 A2 左上角坐标为 (x2,y2);矩形宽度为 width2,高度为 height2;

画图分析,只看水平方向:

由图可以得出,x 方向上:

令 maxX = Mathmax(x1 + width1, x2 + width2)

令 minX = Mathmax(x1, x2)

若相交或包含则必满足: maxX - minX <= width1 + width2;

同理可以容易得到 y 轴相交的判断

使用 ElementgetBoundingClientRect()获取 dom 元素位置信息

该部分逻辑如下,比较简单

难点已经攻破,遍历 checkbox 集合,每个 checkbox 都执行上面的矩形相交判断,并进行相应的勾选处理,此处不再多累述

源码

END

<script type="text/javascript" src="js/jqueryminjs"></script>

$(document)mousemove(function(e) {

$("#xy")text(epageX + ", " + epageY);

});

以下是我帮你写的 demo 你可以自己在改改 测试其他情况!!!!

<html>

<body>

<script type="text/javascript">

var ikey = 0;

var imouse = 0;

var itime = 60 10;

documentbodyonmousemove = function(){

imouse = 1;

}

documentbodyonkeydown = function(){

ikey = 1;

}

var ierval = windowsetInterval(function(){

if(imouse){

imouse = 0;

windowalert("鼠标移动过");

}

if(ikey){

ikey = 0;

windowalert("键盘敲击过");

}

itime -= 1;

if(itime <= 0){

windowclearInterval(ierval);

}

},1000);

</script>

</body>

</html>

你指的不好用是什么意思? 你是不是想做个 div 鼠标跟随? <html> <head> <script> function time() { var today = new Date(); var h = todaygetHours(); var m = todaygetMinutes(); var s = todaygetSeconds(); if(h<10) h = "0"+h; if(m<10) m = "0"+m; if(s<10) s = "0"+s; documentgetElementById('txt')innerHTML=h+":"+m+":"+s; t = setTimeout('time()',500) } </script> </head> <body onload="time()"> <script> function move() { txtstyleleft = eventclientX-40; txtstyletop = eventclientY+20; } documentonmousemove = move; </script> <div id = "txt" style="position: absolute;"> </div> </body> </html> 你试试这段代码 另外 在firefox下是没有 event对象的 所以 不能再firefox下使用

麻烦采纳,谢谢!

给特定的层注册onomuseover事件,在事件处理函数里用定时器来循环获得

var x,y;

setInterval(function(e){

e = e || windowevent;

x = epageX;

y = epageY;

},1000);处理一下兼容性就好了。

① 如果要在整个document文档中使鼠标光标形状是n-size,可以给document注册mouseover和mousemove事件,并且设置它的样式为cursor:n-size;

②同样地,如果要在拖动某个div使鼠标光标样式为某个形状时,先给div盒子注册拖动事件,拖动事件ondrag,然后设置div的stylecursor = "某个形状样式属性值";

以上就是关于js问题,如何当鼠标停留到某个连接上时获得当前鼠标位置和连接地址,并存入变量全部的内容,包括:js问题,如何当鼠标停留到某个连接上时获得当前鼠标位置和连接地址,并存入变量、js怎样获取对象id值、原生JS 实现框选功能(Vue)等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/10130828.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-05
下一篇2023-05-05

发表评论

登录后才能评论

评论列表(0条)

    保存