如何解决使用相同的物理键盘时虚拟键盘不起作用
我创建了一个虚拟键盘来插入特殊字符。我的代码如下: html:
<style>
* {
margin: 0;
padding: 0;
}
body {
font: 60%/1.5 Verdana,Sans-Serif;
background: #DDDDDD;
}
#container {
margin: 100px auto;
width: 100%;
}
#write {
margin: 0 0 5px;
padding: 5px;
width: 100%;
height: 100px;
font: 1em/1.5 Verdana,Sans-Serif;
background: #EEEEEE;
border: 1px solid #f9f9f9;
-moz-border-radius: 5px;
-webkit-border-radius: 5px;
}
#write1 {
margin: 0 0 5px;
padding: 5px;
width: 100%;
height: 100px;
font: 1em/1.5 Verdana,Sans-Serif;
background: #EEEEEE;
border: 1px solid #f9f9f9;
-moz-border-radius: 5px;
-webkit-border-radius: 5px;
}
#keyboard {
margin: 0;
padding: 0;
list-style: none;
}
#keyboard li {
float: left;
margin: 0 5px 5px 0;
width: 25px;
height: 25px;
line-height: 25px;
text-align: center;
background: #EEEEEE;
border: 1px solid #f9f9f9;
-moz-border-radius: 5px;
-webkit-border-radius: 5px;
}
.capslock,.tab,.left-shift {
clear: left;
}
#keyboard .tab,#keyboard .delete {
width: 50px;
}
#keyboard .capslock {
width: 50px;
}
#keyboard .return {
width: 50px;
}
#keyboard .left-shift {
width: 50px;
}
#keyboard .right-shift {
width: 50px;
}
.lastitem {
margin-right: 0;
}
.uppercase {
text-transform: uppercase;
}
#keyboard .space {
clear: left;
width: 350px;
}
.on {
display: none;
}
#keyboard li:hover {
position: relative;
top: 1px;
left: 1px;
border-color: #e5e5e5;
cursor: pointer;
}
</style>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<link rel="stylesheet" type="text/css" href="css/style.css" />
</head>
<body>
<div id="container">
<textarea id="write" rows="6" cols="60"></textarea>
<textarea id="write1" rows="6" cols="60"></textarea>
<ul id="keyboard">
<li class="symbol"><span class="off">⁰</span><span class="on">₀</span></li>
<li class="symbol"><span class="off">¹</span><span class="on">₁</span></li>
<li class="symbol"><span class="off">²</span><span class="on">₂</span></li>
<li class="symbol"><span class="off">³</span><span class="on">₃</span></li>
<li class="symbol"><span class="off">⁴</span><span class="on">₄</span></li>
<li class="symbol"><span class="off">⁵</span><span class="on">₅</span></li>
<li class="symbol"><span class="off">⁶</span><span class="on">₆</span></li>
<li class="symbol"><span class="off">⁷</span><span class="on">₇</span></li>
<li class="symbol"><span class="off">⁸</span><span class="on">₈</span></li>
<li class="symbol"><span class="off">⁹</span><span class="on">₉</span></li>
<li class="symbol"><span class="off">⁺</span><span class="on">₊</span></li>
<li class="symbol"><span class="off">⁻</span><span class="on">₋</span></li>
<li class="symbol"><span class="off">⁼</span><span class="on">₌</span></li>
<li class="symbol"><span class="off">⁽</span><span class="on">₍</span></li>
<li class="symbol"><span class="off">⁾</span><span class="on">₎</span></li>
<li class="symbol"><span class="off">⁾</span><span class="on">₎</span></li>
<li class="letter">Δ</li>
<li class="letter">Σ</li>
<li class="letter">Φ</li>
<li class="letter">Ψ</li>
<li class="letter">Ω</li>
<li class="letter">α</li>
<li class="letter">β</li>
<li class="letter">γ</li>
<li class="letter">δ</li>
<li class="letter">ε</li>
<li class="letter">ζ</li>
<li class="letter">η</li>
<li class="letter">θ</li>
<li class="letter">λ</li>
<li class="letter">μ</li>
<li class="letter">ν</li>
<li class="letter">ξ</li>
<li class="letter">π</li>
<li class="letter">ρ</li>
<li class="letter">σ</li>
<li class="letter">τ</li>
<li class="letter">φ</li>
<li class="letter">ω</li>
<li class="symbol"><span class="off">[</span><span class="on">{</span></li>
<li class="symbol"><span class="off">]</span><span class="on">}</span></li>
<li class="symbol lastitem"><span class="off">\</span><span class="on">|</span></li>
<li class="capslock">caps</li>
<li class="letter">α</li>
<li class="letter">s</li>
<li class="letter">d</li>
<li class="letter">f</li>
<li class="letter">g</li>
<li class="letter">h</li>
<li class="letter">j</li>
<li class="letter">k</li>
<li class="letter">l</li>
<li class="symbol"><span class="off">;</span><span class="on">:</span></li>
<li class="symbol"><span class="off">'</span><span class="on">"</span></li>
<li class="return lastitem">return</li>
<li class="left-shift">shift</li>
<li class="letter">z</li>
<li class="letter">x</li>
<li class="letter">c</li>
<li class="letter">v</li>
<li class="letter">β</li>
<li class="letter">n</li>
<li class="letter">m</li>
<li class="symbol"><span class="off">,</span><span class="on"><</span></li>
<li class="symbol"><span class="off">.</span><span class="on">></span></li>
<li class="symbol"><span class="off">/</span><span class="on">?</span></li>
<li class="right-shift lastitem">shift</li>
<li class="space lastitem"> </li>
</ul>
</div>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<script type="text/javascript" src="js/keyboard.js"></script>
</body>
</html>
和脚本:
$(function(){
var $write = $('#write'),shift = false,capslock = false;
$('#keyboard li').click(function(){
var $this = $(this),character = $this.html(); // If it's a lowercase letter,nothing happens to this variable
// Shift keys
if ($this.hasClass('left-shift') || $this.hasClass('right-shift')) {
$('.letter').toggleClass('uppercase');
$('.symbol span').toggle();
shift = (shift === true) ? false : true;
capslock = false;
return false;
}
// Caps lock
if ($this.hasClass('capslock')) {
$('.letter').toggleClass('uppercase');
capslock = true;
return false;
}
// Delete
if ($this.hasClass('delete')) {
var html = $write.html();
$write.html(html.substr(0,html.length - 1));
return false;
}
// Special characters
if ($this.hasClass('symbol')) character = $('span:visible',$this).html();
if ($this.hasClass('space')) character = ' ';
if ($this.hasClass('tab')) character = "\t";
if ($this.hasClass('return')) character = "\n";
// Uppercase letter
if ($this.hasClass('uppercase')) character = character.toUpperCase();
// Remove shift once a key is clicked.
if (shift === true) {
$('.symbol span').toggle();
if (capslock === false) $('.letter').toggleClass('uppercase');
shift = false;
}
// Add the character
$write.html($write.html() + character);
});
});
我在这里遇到的问题是:
- 从物理键盘输入某些字符后,我无法再从虚拟键盘插入其他字符。
- 我也想用这个虚拟键盘输入
write1
的字符,但我不知道如何。
我期待您的帮助。谢谢。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。