Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/199.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为什么innerHTML在Android浏览器中返回未定义?_Javascript_Android_Xml - Fatal编程技术网

Javascript 为什么innerHTML在Android浏览器中返回未定义?

Javascript 为什么innerHTML在Android浏览器中返回未定义?,javascript,android,xml,Javascript,Android,Xml,我有以下xml结构: <Order> <Mats> <mat> <item size="0.5"> <imgsrc>sometext</imgsrc> <size>sometext</size> <cpu>0</cpu> <cid>4208</cid>

我有以下xml结构:

<Order>
  <Mats>
    <mat>
      <item size="0.5">
        <imgsrc>sometext</imgsrc>
        <size>sometext</size>
        <cpu>0</cpu>
        <cid>4208</cid>
        <id/>
      </item>
    </mat>
    <mat>
      <item size="0.5">
        <imgsrc>sometext</imgsrc>
        <size>sometext</size>
        <cpu>0</cpu>
        <cid>4208</cid>
        <id/>
      </item>
    </mat>
    <mat>
      <item size="0.5">
        <imgsrc>sometext</imgsrc>
        <size>sometext</size>
        <cpu>0</cpu>
        <cid>4208</cid>
        <id/>
      </item>
    </mat>
    <mat>
      <item size="0.5">
        <imgsrc>sometext</imgsrc>
        <size>sometext</size>
        <cpu>0</cpu>
        <cid>4208</cid>
        <id/>
      </item>
    </mat>
  </Mats>
</Order>
在chrome中,警报会导致:

<mat><item size="0.5"><imgsrc>sometext</imgsrc><size>0.5</size><cpu>0</cpu><cid>4208</cid><id/></item></mat>
sometext0.504208
在android平板电脑的默认浏览器中(默认浏览器android 4.1.1 model Prestige 7G):

未定义

我用自己创建的函数替换了.innerHTML:

function common_get_inner_html(element)
{
  //console.log(element);
  element = element.childNodes;

  var xml_serializer = new XMLSerializer();
  var inner_html = "";
  //console.log(element.length);
  for (i = 0; i < element.length; ++i)
  {
    //console.log(element[i]);
    inner_html += xml_serializer.serializeToString(element[i]);
  }
  //console.log("inner_html: " + inner_html);
  return inner_html;
}
我这样称呼它:

var top_layer_xml = "<mat>" + common_get_inner_html(doc.getElementsByTagName('mat')[(mattes_number_layers - 2)]) + "</mat>"; //gets the data for the top layer
common_set_inner_html(doc.getElementsByTagName('mat')[(mattes_number_layers - 2)], new Array("<item size='" + size/ppi + "'><imgsrc>" + mattes_replace_default_matte_source($(el).find("imgsrc").first().text()) + "</imgsrc><size>" + size/ppi + "</size><cpu>" + cpu + "</cpu><cid>" + cid + "</cid><id/></item>", "<fillet index='" + (mattes_number_layers - 2) + "'></fillet>")); //puts the last added layer into the xml
common_append_node(doc.getElementsByTagName('Mats')[0], top_layer_xml);
var top_layer_xml = "<mat>" + common_get_inner_html(doc.getElementsByTagName('mat')[(mattes_number_layers - 2)]) + "</mat>"; //gets the data for the top layer
function common_set_inner_html(element, xml_array)
{
  while (element.firstChild)
  {
    element.removeChild(element.firstChild);
  }

  var parser = new DOMParser(); //create a new DOMParser
  for (i = 0; i < xml_array.length; i++)
  {
    var doc = parser.parseFromString(xml_array[i], "application/xml"); //convert the string to xml
    element.appendChild(element.ownerDocument.importNode(doc.documentElement, true));
  }
  return element;
}
common_set_inner_html(doc.getElementsByTagName('mat')[(mattes_number_layers - 2)], new Array("<item size='" + size/ppi + "'><imgsrc>" + mattes_replace_default_matte_source($(el).find("imgsrc").first().text()) + "</imgsrc><size>" + size/ppi + "</size><cpu>" + cpu + "</cpu><cid>" + cid + "</cid><id/></item>", "<fillet index='" + (mattes_number_layers - 2) + "'></fillet>")); //puts the last added layer into the xml
function common_append_node(element, xml_string)
{
  var parser = new DOMParser(); //create a new DOMParser
  var doc = parser.parseFromString(xml_string, "application/xml"); //convert the string to xml
  element.appendChild(element.ownerDocument.importNode(doc.documentElement, true));
  return element;
}
common_append_node(doc.getElementsByTagName('Mats')[0], top_layer_xml);