children.innerText在firefox中不起作用

我有这样的HTML:

  • Incomes INR 50.00Dr
      • Sales A/c INR 50.00Dr
      • Indirect Income INR 0.00Cr
          • Realized Exchange Gain INR 0.00Cr
          • Rounding off Gain A/c INR 0.00Cr
          • Discount Received A/c INR 0.00Cr
          • Stock Income INR 0.00Cr
      • Clearing And Forwarding Rcd INR 0.00Cr
      • Transport charges received INR 0.00Cr
      • Sales Discount A/c INR 0.00Cr
      • Stock Income A/c INR 0.00Cr
      • Exchange Gain A/c INR 0.00Cr
  • Net Loss 14,950.00Cr
  • 现在我需要获得innertext

  • 为此,我这样做:

     var items = []; var inputData = $('#divTreeViewIncomeDetails').find('li > span'); for (var i = 0; i < inputData.length; i++) { var position, data1, data2; position = inputData[i].className; data1 = inputData[i].children['0'].innerText.trim(); data2 = inputData[i].children['1'].innerText.trim(); var item = { position: position, data1: data1, data2: data2 } items.push(item); } 

    它在IE,Chrome,Safari,Opera中运行良好

    但不是在FIREFOX!

     data1 = inputData[i].children['0'].innerText.trim(); 

    这行我没有得到FF中的值,它跳过代码

    这有替代代码吗?

    使用textContent而不是innerText

    innerText未在FireFox中实现innerText不是官方的。 您可能希望使用我认为适用于所有浏览器的textContent

    编辑:(文档说它适用于IE9及以上版本)

    请参阅文档: 链接

    来自文档的小引用

    与innerText的不同之处

    Internet Explorer引入了element.innerText。 意图与几个不同之处几乎相同:

    请注意,虽然textContent获取所有元素(包括元素和内容)的内容,但大多数等效的特定于IE的属性innerText却没有。 innerText也知道样式,不会返回隐藏元素的文本,而textContent会。 由于innerText知道CSS样式,它将触发重排,而textContent则不会