js如何判断光标是否在某元素上

js如何判断光标是否在某元素上,第1张

判断光标是否在某元素上可以在window监听onmouseenter(onmouseleave)或者onmouseover(onmouseout)给某变量赋值1(赋值0),那么变量为1则在元素上(0则不在元素上)

windowonmouseover = function () { isOn = 1};

windowonmouseout = function () { isOn = 0};

window中mouse相关事件补充:

onmousedown 鼠标按钮被按下 (和onmouseup组成了单击事件);

onmouseenter 当鼠标指针移动到元素上时触发 (只在进入后触发一次,不支持冒泡,子元素不触发);

onmouseleave 当鼠标指针移出元素时触发 (只在离开后触发一次,支持冒泡,子元素也可以触发);

onmousemove 鼠标被移动 (在元素内移动会一直触发);

onmouseover 鼠标移到某元素之上 (只在进入后触发一次,支持冒泡,子元素也可以触发);

onmouseout 鼠标从某元素移开 (只在离开后触发一次,支持冒泡,子元素也可以触发);

onmouseup 鼠标按键被松开;

js

documentgetElementById(id)focus();

例如

<input id="shan" type="text" onchange ="return gaib(thisid)"/>

function gaib(id) {

var oo=documentgetElementById(id);

if (oovalue == 3) {

alert('输入错误');

oofocus();

}

}

jquery

$("#"+id)focus();

例如

<input id="shan" type="text" onchange ="return gaib(thisid)"/>

function gaib(id) {

var oo=$("#"+id);

if (ooval() == 3) {

alert('输入错误');

oofocus();

}

}

<html>

<body>

<input type="text" value="三四五六七" id="in" onclick="javascript:addComma(this)" />

<script type="text/javascript">

function getCursortPosition (ctrl) {//获取光标位置函数

var CaretPos = 0; // IE Support

if (documentselection) {

ctrlfocus ();

var Sel = documentselectioncreateRange ();

SelmoveStart ('character', -ctrlvaluelength);

CaretPos = Seltextlength;

}

// Firefox support

else if (ctrlselectionStart || ctrlselectionStart == '0')

CaretPos = ctrlselectionStart;

return (CaretPos);

}

function addComma(obj){

pos = getCursortPosition(obj);

s = objvalue;

objvalue = ssubstring(0, pos)+","+ssubstring(pos);

}

</script>

</body>

</html>

以上就是关于js如何判断光标是否在某元素上全部的内容,包括:js如何判断光标是否在某元素上、js或jquery定位光标、求js高手解决:在文本框内的光标处 用js插入文本等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

原文地址: http://outofmemory.cn/web/9527143.html

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

发表评论

登录后才能评论

评论列表(0条)

保存