/******************************************************************************* 
 | 
* KindEditor - WYSIWYG HTML Editor for Internet 
 | 
* Copyright (C) 2006-2011 kindsoft.net 
 | 
* 
 | 
* @author Roddy <luolonghao@gmail.com> 
 | 
* @site http://www.kindsoft.net/ 
 | 
* @licence http://www.kindsoft.net/license.php 
 | 
*******************************************************************************/ 
 | 
  
 | 
KindEditor.plugin('autoheight', function(K) { 
 | 
    var self = this; 
 | 
  
 | 
    if (!self.autoHeightMode) { 
 | 
        return; 
 | 
    } 
 | 
  
 | 
    var minHeight; 
 | 
  
 | 
    function hideScroll() { 
 | 
        var edit = self.edit; 
 | 
        var body = edit.doc.body; 
 | 
        edit.iframe[0].scroll = 'no'; 
 | 
        body.style.overflowY = 'hidden'; 
 | 
    } 
 | 
  
 | 
    function resetHeight() { 
 | 
        var edit = self.edit; 
 | 
        var body = edit.doc.body; 
 | 
        edit.iframe.height(minHeight); 
 | 
        self.resize(null, Math.max((K.IE ? body.scrollHeight : body.offsetHeight) + 76, minHeight)); 
 | 
    } 
 | 
  
 | 
    function init() { 
 | 
        minHeight = K.removeUnit(self.height); 
 | 
  
 | 
        self.edit.afterChange(resetHeight); 
 | 
        hideScroll(); 
 | 
        resetHeight(); 
 | 
    } 
 | 
  
 | 
    if (self.isCreated) { 
 | 
        init(); 
 | 
    } else { 
 | 
        self.afterCreate(init); 
 | 
    } 
 | 
}); 
 | 
  
 | 
/* 
 | 
* 如何实现真正的自动高度? 
 | 
* 修改编辑器高度之后,再次获取body内容高度时,最小值只会是当前iframe的设置高度,这样就导致高度只增不减。 
 | 
* 所以每次获取body内容高度之前,先将iframe的高度重置为最小高度,这样就能获取body的实际高度。 
 | 
* 由此就实现了真正的自动高度 
 | 
* 测试:chrome、firefox、IE9、IE8 
 | 
* */ 
 |