2010-05-11 54 views
2

與Chrome(v.4.1)中的標題一樣,多個tinyMce(v2.08)實例不起作用。確切的說在前兩種情況下都行,別人沒有,鉻給出了這樣的錯誤:多個tinyMce實例不能在chrome中工作

Uncaught Error: INDEX_SIZE_ERR: DOM Exception 1

出現這種情況之前?

不幸的是,我無法向您顯示任何代碼,因爲它是針對管理員區域的,我現在只需要一些線索。

+1

我有完全相同的問題(2.08以及)。失敗的行在getRng()函數中: return s.getRangeAt(0); – konryd 2010-06-10 15:22:22

+0

你試過這個嗎? Opera中的TinyMCE JavaScript錯誤(getRangeAt,INDEX_SIZE_ERR): http://my.opera.com/XP1/blog/2011/07/21/tinymce-javascript-error-in-opera-getrangeat-index-size-err – XP1 2011-07-23 12:21:00

回答

1

是的,作爲用戶XP1指出,在這個環節,你可以找到一個comprimed TinyMCE的源解析: http://my.opera.com/XP1/blog/2011/07/21/tinymce-javascript-error-in-opera-getrangeat-index-size-err

但是,如果你想與原uncomprimed源工作(它只是更容易一點),這裏是解決方案: 查找代碼 「setRng:函數(R){」(不帶引號),並交換了整個函數:

setRng : function(r) { 
     var s, t = this; 

     if (!t.tridentSel) { 
      s = t.getSel(); 

      if (s)    // this block fixed according to TinyMCE JavaScript error in Opera (getRangeAt, INDEX_SIZE_ERR); http://my.opera.com/XP1/blog/2011/07/21/tinymce-javascript-error-in-opera-getrangeat-index-size-err 
      { 
       if(s.anchorNode === null && s.focusNode === null) 
       { 
        t.explicitRange = r; 
        try { 
         s.removeAllRanges(); 
        } catch (ex) { 
         // IE9 might throw errors here don't know why (NOW WE KNOW WHY DAMMIT!) 
        } 
        s.addRange(r); 
       } 
       if (s.rangeCount > 0) 
       t.selectedRange = s.getRangeAt(0); 
      } 
     } else { 
      // Is W3C Range 
      if (r.cloneRange) { 
       t.tridentSel.addRange(r); 
       return; 
      } 

      // Is IE specific range 
      try { 
       r.select(); 
      } catch (ex) { 
       // Needed for some odd IE bug #1843306 
      } 
     } 
    }, 

ONE注:請確保變量匹配。我不確定它是如何在不同的TinyMCE版本之間進行的,但是腳本文件的comprimed和src突變之間的變量並不相同。

保重和上帝的速度