我正在iframe中编写一个简单的编辑器,但无法注册“oninput”事件以检测用户何时修改文本字段,例如粘贴数据等。
var txtArea =
document.getElementById('txtArea');
txtArea.contentWindow.document.designMode="on";
txtArea.contentWindow.document.open();
txtArea.contentWindow.document.write("<head><style
type='text/css'>body{font-size:13px;}</style></head><body>"+data.document+"</body>");
txtArea.contentWindow.document.close();
$([txtArea.contentWindow.document]).bind("click",
updateCaretPosMouse); //fires
$([txtArea.contentWindow.document]).bind("keyup",
updateCaretPosKeyboard); //fires
$([txtArea.contentWindow.document]).bind("input",
textChanged); //doesn't fire
如果我创建一个普通的旧textarea元素,并向其添加“input”事件,那么它可以工作。 “输入”事件不能与iframe文本区域一起使用吗?
答案 0 :(得分:1)
oninput
不是官方DOM事件,它似乎是Mozilla特定的扩展(source)。 keyup
不会做这个伎俩吗?
答案 1 :(得分:0)
答案 2 :(得分:0)
尝试使用更改事件?