是否可以专注于<div>使用JavaScript focus()函数?
我有一个<div>标签
<div id="tries">You have 3 tries left</div>
Run Code Online (Sandbox Code Playgroud)
我试图专注于以上<div>使用:
document.getElementById('tries').focus();
Run Code Online (Sandbox Code Playgroud)
但它不起作用.有人可以提出建议....
当我将pre元素设置为contenteditable并将焦点放入其中进行编辑时,它会在它周围看到一个看起来不太好的虚线边框.当焦点在其他地方时,边界不存在.
如何删除该边框?
谢谢
我有以下代码片段:
<div id="listbox1div" style="z-index:95; background:white; overflow-y:auto; overflow-x:hidden; width:240; height:314px;">
<a id="focusLink2"></a>
<table id="ptObj_listbox1...
Run Code Online (Sandbox Code Playgroud)
我有一个<div>动态构建元素的页面(如上所述).这<div>会在主屏幕顶部显示数据.当页面生成div时,我想设置焦点.我不能在body标签上放一个onLoad函数,因为我不知道什么时候生成div.
一个<div>标签不能有焦点设置于它直接.所以我<a>在下面的函数中放了一个带有id 的空标签:
function setTableFocus(count){
var flinkText = 'focusLink'+count;
document.getElementById(flinkText).focus();
}
Run Code Online (Sandbox Code Playgroud)
我没有收到任何错误,我知道在页面显示时(通过警报)正在调用该函数.但是,当我使用箭头键或输入按钮时整个页面移动(甚至不是呈现数据的div).
当我点击其中一个表格元素(使用鼠标).之后,keydown事件开始工作.我想要做的是将数据呈现给用户并自动进行键盘驱动.
有没有人有任何建议我怎么能做到这一点?
有没有办法在DIV元素上听键盘事件?
我的代码:
?<div id="div" style="height:50px" class="ui-widget-content"></div>
<input id="input">??????????????
?$('#div,#input').keyup(function(event){
console.log(event.keyCode);
});??????
Run Code Online (Sandbox Code Playgroud)
实际上,代码只触发输入,我可以为div处理吗?
每次我在画布上移动时,mousemove事件都会起作用并调用onMouseMove.虽然,keydown和keyup事件永远不会奏效.我点击画布并点击一些键,但没有触发任何事件.有谁知道为什么事件不起作用?谢谢你的建议!如果有人对代码的来源感到好奇,我正在关注udacity的html5课程.
InputEngineClass = Class.extend({
keyState: new Array(),
setup: function() {
document.getElementById("gameCanvas").addEventListener('mousemove', gInputEngine.onMouseMove);
document.getElementById("gameCanvas").addEventListener('keydown', gInputEngine.onKeyDown);
document.getElementById("gameCanvas").addEventListener('keyup', gInputEngine.onKeyUp);
},
onMouseMove: function (event) {
console.log("Called onMouseMove");
var posx = event.clientX;
var posy = event.clientY;
},
onKeyDown: function (event) {
console.log("KEY DOWN!!!");
keyState[event.keyID] = true;
gInputEngine.update();
},
onKeyUp: function (event) {
console.log("KEY UP!!!");
keyState[event.keyID] = true;
},
update: function() {
KeyW = 87;
if(gInputEngine.keyState[KeyW]) console.log("FORWARD!!!");
}
});
gInputEngine = new InputEngineClass();
Run Code Online (Sandbox Code Playgroud) 我正在尝试使用Html.App.beginnerProgram,我想onKeyDown在<body>元素中添加事件处理程序(等).
不幸的是,我投入的一切都view变成了孩子们<body>.返回Html.body从view不会做的伎俩.这段代码:
main = beginnerProgram { model = 0, view = view, update = update }
view model = body [] []
update _ model = model
Run Code Online (Sandbox Code Playgroud)
会产生:
<html>
<head>...</head>
<body>
<body></body>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
那么,我如何获得<body>元素的控制权?
我已经实现了一些东西,看起来像这样:如果用户单击一个 div,另一个 div 中的图片会发生变化:
<div id="actionDiv" onClick="changePic();">Change Pic</div>
<div id="picHolder"></div>
Run Code Online (Sandbox Code Playgroud)
因此,可以通过鼠标轻松访问“更改图片”这个文本。如何从文本 div actionDiv 中的 Tab 键获取焦点以实现可访问性?
我有 5 个可点击的 div 标签,该 div 显示一个带有数字的黄色方块。当用户点击一个方块时,方块的颜色会发生变化,表明被点击的方块是“活动”方块(这部分工作正常)。然后用户应该能够按下一个数字。当数字被按下时,div中显示的数字应该变成他们按下的数字!
但是......它不起作用!作为 div 属性,我有 onkeypress="(更改标签的 innerHTML 的函数)"。
出于测试目的,我写了 onkeypress="alert('key');" 作为一个 div 属性,看看它是我的 javascript 函数,还是 onKeyPress 本身!但警报甚至不会显示!
我尝试将 onKeyPress 警报放在 body 标签中,效果很好。它只是 div!我还尝试在单击 div 之前和单击 div 之后按下一个键!
我也试过 onkeydown 和 onkeyup!
我真的看不出问题!代码如下:
<html>
<head>
<style type="text/css">
#grid {
position:absolute;
padding: 0;
border:0;
width:370px;
height:370px;
}
.box
{
position:absolute;
border: 2px solid Black;
height: 50px;
width: 50px;
vertical-align: middle;
text-align: center;
background-color: yellow;
font-size: xx-large;
color:Navy;
font-family: Arial;
margin:10px;
line-height:1.6;
}
.boxActive
{
background-color:Aqua;
}
</style> …Run Code Online (Sandbox Code Playgroud) 我希望能够在Blazor中不使用HTML INPUT标记的情况下捕获键盘输入。按下键后,我将显示一个图形来代表按下的字母。
像这样
@page "/counter"
@using Microsoft.AspNetCore.Components.Web
<div @onkeypress="e => KeyPress(e)">
Press any letter key
</div>
@code {
private void KeyPress(KeyboardEventArgs e)
{
var letter = e.Key;
}
}
Run Code Online (Sandbox Code Playgroud)
当我在其上设置断点时,似乎没有调用KeyPress方法。任何帮助,不胜感激。