Ell*_*ero 8 html javascript jquery
我正在我的网络应用程序中编写一些单元测试,我希望Enter在点击下载到文本文件按钮之后自动触发我的页面中的按键事件.我怎么能在jQuery或Javascript中做到这一点?
创建一个变量,告诉我们用户是否单击了您的按钮.
var clicked = false;
Run Code Online (Sandbox Code Playgroud)向您的按钮添加一个事件监听器,这样当用户点击它时,clicked变量就会变为true.
myButton.addEventListener('click', function(){
clicked = true;
});
Run Code Online (Sandbox Code Playgroud)添加keypress事件侦听器:
document.addEventListener('keypress', function(e) {
// `e` is the event
});
Run Code Online (Sandbox Code Playgroud)在该事件监听器内部,检查用户之前是否单击过
if(clicked) {
// ...
}
Run Code Online (Sandbox Code Playgroud)如果他做了,检查按下的键.输入的密钥代码是13.
var keynum = e.keyCode||e.which;
if(keynum == 13) {
// ...
}
Run Code Online (Sandbox Code Playgroud)如果输入了按下的键,请使用
clicked = false;
Run Code Online (Sandbox Code Playgroud)
否则,一旦用户单击您的按钮并按下回车键,就不必再次单击该按钮.
之后运行您的代码.例如,这将f在2秒后调用函数.
setTimeout(f, 2000);
Run Code Online (Sandbox Code Playgroud)现场演示
var clicked = false;
document.querySelector('#btn').addEventListener('click', function(){
clicked = true;
snippet.log("You clicked the button. `clicked` is now `true`");
});
document.addEventListener('keypress', function(e) {
if(clicked) {
var keynum = e.keyCode || e.which;
if(keynum == 13) {
clicked = false;
snippet.log("`clicked` is now `false`. Waiting 2 seconds...");
setTimeout(f, 2000);
}
}
});
function f() {
snippet.log("Function `f` executed successfully!");
}Run Code Online (Sandbox Code Playgroud)
#btn {
border: 3px solid red;
cursor: pointer;
}Run Code Online (Sandbox Code Playgroud)
<div id="btn">Click me, and then press enter.</div>
<!-- Provides the `snippet` object, see http://meta.stackexchange.com/a/242144/134069 --><script src="http://tjcrowder.github.io/simple-snippets-console/snippet.js"></script>Run Code Online (Sandbox Code Playgroud)
如果我答对了你的问题,这就是你要找的
<html>
<head>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script type="text/javascript">
$(document).keydown(function(event){
if(event.keyCode == 13){
alert("keypressed");
}
});
function clickevent()
{
var e = $.Event("keydown");
e.which = 13;
e.keyCode = 13;
$(document).trigger(e);
}
</script>
</head>
<body id="thebody">
<input type="button" onclick="clickevent()" value="click me first">
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
42498 次 |
| 最近记录: |