接下来回到百度空间创建新文章,把刚才复制的内容CTRL+V粘贴到文章编辑中即可发表。
首先想到的就是禁用文本框的onkeydown事件了:
<input type="text" onkeydown="return false">这样文本框不能输入任何字符,可以用鼠标右键菜单的“粘贴”来粘贴复制的字符,但这样做有一个缺点:粘贴的快捷键也被禁用了,无法使用Ctrl+V来粘贴值。所以我们改造一下代码:
<input type="text" id="demo"> document.getElementById('demo').onkeydown = function(event) {var evt = event || window.event
if (evt.ctrlKey && evt.keyCode == 86) { // ctrl + v
console.log('粘贴快捷键按下')
} else {
return false
}
}
至此以上代码已基本满足预期要求,但你会发现粘贴进去的内容没办法删除(因为backspace和delete键也被禁用了),所以最终的代码应该是这样的:
document.getElementById('demo').onkeydown = function(event) {var evt = event || window.event
console.log(evt.keyCode)
if (evt.ctrlKey && evt.keyCode == 86) { // ctrl + v
console.log('粘贴快捷键按下')
} else if (evt.keyCode == 8 || evt.keyCode == 46) { // backspace和delete键
} else {
return false
}
}
那可不是一个简单的textarea而已欧:)是一个在线的编辑器,比如eWebEditor在线编辑器,调用这个编辑器就可以实现复杂的文本编辑,比如转换HTML代码,还有上传图片等等,类似于Word操作。