首页 > 其他 > 详细

富文本编辑器焦点

时间:2014-07-21 10:28:30      阅读:398      评论:0      收藏:0      [点我收藏+]
<!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">
<head>
<style type="text/css">
</style>
</head>
<body>
<iframe id="ifr1" width="300px" height="200px"></iframe>
<input  type="button" value="focus" id="btn1"/>
<script>
window.onload=function(){
ifr = document.getElementById(‘ifr1‘);
doc =  ifr.contentWindow.document;
//alert(doc);
doc.designMode = ‘on‘;
doc.open();
doc.write(‘<html><head></head><body></body></html>‘);
doc.close();
var btn1 = document.getElementById(‘btn1‘);
btn1.onclick = function(){
console.log(‘click‘);
doc.body.focus(); //兼容 chrome IE
//这个并不会触发body.focus而是会触发ifr.contentDocument.defaultView.onfocus
ifr.contentDocument.defaultView.focus();//兼容FF chrome 
//如果有了这个上面的就不起作用了。
};
doc.body.onfocus = function(){   //直接使用会报错,ie下只有body结束所以
//doc.write(‘<html><head></head><body></body></html>‘);
console.log(‘doc.body.onfocus‘);
}
doc.body.onblur = function(){ 
console.log(‘doc.body.onblur‘);
}
//
ifr.contentDocument.defaultView.onfocus = function(){
console.log(‘contentDocument.defaultView.onfocus‘);
}
ifr.contentDocument.defaultView.onblur = function(){
console.log(‘contentDocument.defaultView.onblur‘);
}
}
/*
* 总结如下
* 获得焦点
 
if(ff){
ifr.contentDocument.defaultView.focus();
}else{
doc.body.focus();
}
* 总结如下
* 焦点事件
if(ie){
doc.body.onfocus = function(){   
console.log(‘doc.body.onfocus‘);
}
}else{
ifr.contentDocument.defaultView.onfocus = function(){
console.log(‘contentDocument.defaultView.onfocus‘);
}
}
*/
</script>

</body>
</html>

如果Jquery

$(ifr.contentDocument.defaultView).focus();

会触发两个

doc.body.onfocus 和  contentDocument.defaultView.onfocus;

慎用。。。。。


富文本编辑器焦点,布布扣,bubuko.com

富文本编辑器焦点

原文:http://my.oschina.net/122612475/blog/289568

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!