【js】关于div的焦点问题 div内有个input,如果input获取了焦点,那么div此时算是

【js】关于div的焦点问题 div内有个input,如果input获取了焦点,那么div此时算是,第1张

div此时是有焦点的,鼠标监听事件可以给你准确的答案

<script type="text/javascript">

function addListener(element, e, fn) {

if (elementaddEventListener) {

elementaddEventListener(e, fn, false);

} else {

elementattachEvent("on" + e, fn);

}

}

addListener(document, "click", function (evt) {

var evt = windowevent windowevent : evt, target = evtsrcElement || evttarget;

if (targetid == "input") {

alert("鼠标在input中")

return;

} else {

while (targetid != "div" && targetnodeNametoLowerCase() != "html") {

target = targetparentNode;

alert("鼠标在div中")

}

if (targetnodeNametoLowerCase() == "html") {

//焦点在div之外

}

}

})

</script>

正常理论上来讲,应该在那里加一个标签的,然后把你的焦点定位到标签中。

二一种方法就是把1234232这段也加上标签,与label一起做成浮动,然后将div设定内填充到“点击这个位置”这里。

首先我要说你的事件注册的不对,应该这样写:

$("#two")focus();

$("div")keydown(function(e){

if(ekeyCode == 13){

alert($(this)html());

}

});

其次,div默认是不能focus的,所以你的焦点就没进去。

如果你实在是要实现div的focus,并且按回车显示内容的话,我有一个办法能达到你的效果。

把三个div换成这样:

<div id="one" contenteditable="true">oooo</div>

<div id="two" contenteditable="true">tttt</div>

<div id="three" contenteditable="true">hhhh</div>

不管IE还是火狐都能达到你的效果。

写jquery吧

假设你要设为焦点的id为yyy,例如<input type='text' id='yyy' />

然后在页面里先引入Jquery,然后自定义函数

<script type='text/javascript'>

$(function(){

yyyfocus();

});

</script>

不知道是不是你想要的,可以看一下,运行过的:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 10 Transitional//EN" ">

以上就是关于【js】关于div的焦点问题 div内有个input,如果input获取了焦点,那么div此时算是全部的内容,包括:【js】关于div的焦点问题 div内有个input,如果input获取了焦点,那么div此时算是、<div contenteditable=true>的焦点、jquery设置焦点并触发事件等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存