Changeset 13349

Show
Ignore:
Timestamp:
06/07/08 03:20:07 (5 years ago)
Author:
dankogai
Message:

makes DOM resizable

Location:
lang/javascript/DOM.resize
Files:
2 modified

Legend:

Unmodified
Added
Removed
  • lang/javascript/DOM.resize/resize.html

    r13348 r13349  
    2222</pre> 
    2323</div> 
     24<script>make_dom_resizable('resizable')</script> 
    2425 
    2526</body> 
    26  
    27  
    28  
    29  
    30  
    31  
    32  
    33  
    34  
    35  
    36  
    37  
    38  
    39  
    40  
    41  
  • lang/javascript/DOM.resize/resize.js

    r13348 r13349  
    11/* 
    2  * $Id: resize.js,v 0.1 2008/06/06 17:47:19 dankogai Exp dankogai $ 
     2 * $Id: resize.js,v 0.1 2008/06/06 18:17:26 dankogai Exp dankogai $ 
    33 */ 
    44  
     
    3333}; 
    3434 
    35 var mousemove; 
    36 var mouseup; 
     35var mousemove, mouseup, dblclick; 
    3736 
    3837var start_resize = function(){     
     
    5756        window.status = ''; 
    5857    }; 
     58    dblclick = function(){ 
     59        parent.style.width  = parent.ow; 
     60        parent.style.height = parent.oh; 
     61    } 
    5962    addEvent(window, 'mousemove', mousemove); 
    6063    addEvent(window, 'mouseover', mousemove); 
     64    addEvent(this, 'dblclick', dblclick); 
    6165    addEvent(window, 'mouseup', mouseup); 
    6266}; 
     
    7478}; 
    7579 
    76 addEvent(window, 'load', function(){ 
    77     getElementsByFunction(document.body, function(elem){ 
    78         if (elem.className != 'resizable') return; 
    79         window.status = elem.className; 
    80         elem.style.border = 'outset 1px'; 
    81         if (! elem.style.position) elem.style.position = 'relative'; 
    82         var resizer = document.createElement('div'); 
    83         for (var p in rstyle) resizer.style[p] = rstyle[p]; 
    84         resizer.appendChild(document.createTextNode('\u2198')); 
    85         addEvent(resizer, 'mousedown', start_resize); 
    86         elem.appendChild(resizer); 
    87     }) 
    88 }); 
     80make_dom_resizable = function(cls){ 
     81    addEvent(window, 'load', function(){ 
     82        getElementsByFunction(document.body, function(elem){ 
     83            if (elem.className != cls) return; 
     84            window.status = elem.className; 
     85            elem.style.border = 'outset 1px'; 
     86            if (! elem.style.position) elem.style.position = 'relative'; 
     87            var resizer = document.createElement('div'); 
     88            for (var p in rstyle) resizer.style[p] = rstyle[p]; 
     89            resizer.appendChild(document.createTextNode('\u2198')); 
     90            addEvent(resizer, 'mousedown', start_resize); 
     91            elem.appendChild(resizer); 
     92        elem.ow = elem.offsetWidth; 
     93        elem.oh = elem.offsetHeight; 
     94        }) 
     95    }); 
     96}; 
    8997 
    9098})(); 
    91  
    92