Changeset 754 for trunk/modules/Gecko


Ignore:
Timestamp:
02/21/07 03:17:14 (13 years ago)
Author:
ray
Message:

#900: catch an error in fullpage mode in gecko

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/modules/Gecko/Gecko.js

    r716 r754  
    670670Xinha.prototype.setCC = function ( target ) 
    671671{ 
    672   if ( target == "textarea" ) 
    673   { 
    674     var ta = this._textArea; 
    675     var index = ta.selectionStart; 
    676     var before = ta.value.substring( 0, index ) 
    677     var after = ta.value.substring( index, ta.value.length ); 
    678  
    679     if ( after.match(/^[^<]*>/) ) 
    680     { 
    681       var tagEnd = after.indexOf(">") + 1; 
    682       ta.value = before + after.substring( 0, tagEnd ) + this.cc + after.substring( tagEnd, after.length ); 
    683     } 
    684     else ta.value = before + this.cc + after; 
    685   } 
    686   else 
    687   { 
    688     var sel = this.getSelection(); 
    689     sel.getRangeAt(0).insertNode( document.createTextNode( this.cc ) ); 
    690   } 
     672  try 
     673  { 
     674    if ( target == "textarea" ) 
     675    { 
     676      var ta = this._textArea; 
     677      var index = ta.selectionStart; 
     678      var before = ta.value.substring( 0, index ) 
     679      var after = ta.value.substring( index, ta.value.length ); 
     680 
     681      if ( after.match(/^[^<]*>/) ) 
     682      { 
     683        var tagEnd = after.indexOf(">") + 1; 
     684        ta.value = before + after.substring( 0, tagEnd ) + this.cc + after.substring( tagEnd, after.length ); 
     685      } 
     686      else ta.value = before + this.cc + after; 
     687    } 
     688    else 
     689    { 
     690      var sel = this.getSelection(); 
     691      sel.getRangeAt(0).insertNode( document.createTextNode( this.cc ) ); 
     692    } 
     693  } catch (e) {} 
    691694}; 
    692695 
    693696Xinha.prototype.findCC = function ( target ) 
    694697{ 
    695  
    696   var findIn = ( target == 'textarea' ) ? window : this._iframe.contentWindow; 
    697   if( findIn.find( this.cc ) ) 
    698   { 
    699     if (target == "textarea") 
    700     { 
    701       var ta = this._textArea; 
    702       var start = pos = ta.selectionStart; 
    703       var end = ta.selectionEnd; 
    704       var scrollTop = ta.scrollTop; 
    705       ta.value = ta.value.substring( 0, start ) + ta.value.substring( end, ta.value.length ); 
    706       ta.selectionStart = pos; 
    707       ta.selectionEnd = pos; 
    708       ta.scrollTop = scrollTop 
    709       ta.focus(); 
    710     } 
    711     else 
    712     { 
    713       var sel = this.getSelection(); 
    714       sel.getRangeAt(0).deleteContents(); 
    715     } 
    716   }   
     698  try  
     699  { 
     700    var findIn = ( target == 'textarea' ) ? window : this._iframe.contentWindow; 
     701    if( findIn.find( this.cc ) ) 
     702    { 
     703      if (target == "textarea") 
     704      { 
     705        var ta = this._textArea; 
     706        var start = pos = ta.selectionStart; 
     707        var end = ta.selectionEnd; 
     708        var scrollTop = ta.scrollTop; 
     709        ta.value = ta.value.substring( 0, start ) + ta.value.substring( end, ta.value.length ); 
     710        ta.selectionStart = pos; 
     711        ta.selectionEnd = pos; 
     712        ta.scrollTop = scrollTop 
     713        ta.focus(); 
     714      } 
     715      else 
     716      { 
     717        var sel = this.getSelection(); 
     718        sel.getRangeAt(0).deleteContents(); 
     719      } 
     720    } 
     721  } catch (e) {} 
    717722}; 
    718723/*--------------------------------------------------------------------------*/ 
Note: See TracChangeset for help on using the changeset viewer.