0

我正面臨我使用jquery.ui.richmedia.js的問題。jQueryUI IE8對象不支持此屬性或方法

「對象不支持此屬性或方法」這個錯誤是

「toremoveTabs [I] .hide()」只是這行代碼存在的。我相信它與hide()方法做的一樣,就像「toremoveTabs [i]」在代碼中的其他地方一樣正常工作。代碼工作正常Mozilla & Chrome。

 resetTabs:function() { 
     // remove unavailable tabs. 
     var toremoveTabs = []; 
     var toremoveTabNames = []; 
     this._forEachTab(function (tab, i, self) { 
      if (self._tabs) { 
       tab = $(tab); 
       var tabName = self._getTabName(tab.attr('content_id')).toLowerCase(); 
       if (!(tabName in self._tabs)) { 
        toremoveTabs[i] = tab; 
        toremoveTabNames[i] = tabName; 
       } 
      } 
     }); 
     this._appendTabs = null; 
     this._appendTabs = {}; 
     for (var i in toremoveTabs) { 
      this._appendTabs[i] = [toremoveTabNames[i], toremoveTabs[i]]; 
      toremoveTabs[i].hide(); 
     } 
    } 

任何人都可以提出一種解決方法/解決方案嗎?

回答

6

我想toremoveTabs[i]不是一個jQuery對象,而是一個常規的DOM節點,因此沒有.hide()函數可用。把它包到jQuery函數來創建一個jQuery對象通話,讓您使用該功能:

jQuery(toremoveTabs[i]).hide(); 
+0

感謝您的答覆安東尼,但如果toremoveTabs [i]是不是一個jQuery對象如何是Mozilla和鉻閱讀它? – underdog

+1

@ShivangSarawagi在我的經驗中,這種錯誤是由某人在不是jQuery對象的某個東西上調用jQuery函數引起的,並且給出了有關代碼的有限上下文信息,我懷疑在這種情況下也是如此。我不能說爲什麼它只能在IE中不起作用,但在FF或Chrome中工作(假設它實際上是這樣),但我建議嘗試一下,看看它是否能解決問題。 –

相關問題