已经阻止默认行为,为什么按 enter 键后会先添加回车,然后再跳转到下一个 pre 标签。 <script>
window.onload=function keycode() {
focusfirst();
var oTargetGroup =document.getElementsByClassName("target");
for (var i=0; i<oTargetGroup.length;i++) {
oTargetGroup[i].onkeyup = function (e) {
var e = e||event;
var NextTarget=this.nextElementSibling.nextElementSibling.nextElementSibling;
if (e.keyCode==13) {
e.preventDefault();
NextTarget.focus();
return false; }
}
}
}
function focusfirst() {
var oFirst= document.getElementById("firsttarget");
oFirst.focus();
}
</script>
</head>
<body>
<h1>文本编辑器</h1>
<hr />
<div class="mainpanel">
<pre class="source">Text 1</pre>
<pre class="status"></pre>
<pre id="firsttarget" class="target" contenteditable ></pre>
<pre class="source">Text 2</pre>
<pre class="status"></pre>
<pre class="target" contenteditable ></pre>
<pre class="source">Text 2</pre>
<pre class="status"></pre>
<pre class="target" contenteditable ></pre>
</div> </body>
</html>
window.onload=function keycode() {
focusfirst();
var oTargetGroup =document.getElementsByClassName("target");
for (var i=0; i<oTargetGroup.length;i++) {
oTargetGroup[i].onkeyup = function (e) {
var e = e||event;
var NextTarget=this.nextElementSibling.nextElementSibling.nextElementSibling;
if (e.keyCode==13) {
e.preventDefault();
NextTarget.focus();
return false; }
}
}
}
function focusfirst() {
var oFirst= document.getElementById("firsttarget");
oFirst.focus();
}
</script>
</head>
<body>
<h1>文本编辑器</h1>
<hr />
<div class="mainpanel">
<pre class="source">Text 1</pre>
<pre class="status"></pre>
<pre id="firsttarget" class="target" contenteditable ></pre>
<pre class="source">Text 2</pre>
<pre class="status"></pre>
<pre class="target" contenteditable ></pre>
<pre class="source">Text 2</pre>
<pre class="status"></pre>
<pre class="target" contenteditable ></pre>
</div> </body>
</html>
if(e.preventDefault){
e.preventDefault()
}else{
e.returnVlaue= false;
}
就可以了
e.preventDefault()
}else{
e.returnVlaue= false;
} 就可以了
keydown 是按下键盘就执行了的