동일한 문제가 있습니다. Firefox는 정상적으로 작동하지만 Chrome에서 내 xml 스 니펫을 추가하지 않습니다. 모든 것을 시도했다. 마지막으로 크롬과 파이어 폭스 모두에서 작동하는 솔루션을 보유하십시오. 다음은 작동하지 않았다 내 원래의 코드이며, 그 해결책 아래 :
var xml = $.parseXML(o.text);
$(xml).find('documentGroups').append('<documentGroup documentGroupID="0" name="Default Group"/>');
은 위의 실패하지만, 아래의 작품. 노드를 삽입하기 위해서는 동일한 XML 문서의 멤버로 노드를 만들어야하기 때문에 위 코드는 다른 XML 문서에 새 documentGroup 노드를 만듭니다. 아래 코드는 노드가 삽입 될 동일한 XML 문서 안에 노드를 생성하도록합니다.
var xml = $.parseXML(o.text);
var defaultGroup = xml.createElement('documentGroup');
$(defaultGroup).attr('documentGroupID', '0').attr('name', 'Default Group');
$(xml).find('documentGroups').append(defaultGroup);
나는이 JQuery와 내에서 해결 될 전망이다. 첫 번째 all-jQuery 구문을 사용하여 Firefox는 노드를 잘 삽입합니다. 크롬도 좋습니다. 그렇지 않으면 jQuery가 구문을 교차 브라우저로 만드는 목표를 달성하지 못하고 있습니다. jQuery는 훌륭하다. 나는 그것을 노크하는 것이 아니다. 문제가 있다고 생각하는 부분에 대해 의견을 말하면됩니다.
$('<node/>')
구문으로 jQuery가 innerHTML을 사용하여 브라우저의 XML 구문 분석기 대신 문자열을 구문 분석하여 HTML 구문이 올바르게 구문 분석하지 못하도록하는 것으로 확인했습니다.
jsfiddle sample? –
http://jsfiddle.net/7fTf2/ - 이것은 독립 실행 형으로 실행되도록 코드를 약간 수정 한 바이올린입니다. –
마지막 줄을 "alert ($ (xmlDoc) .children ("bookmarks "). children(). length);"로 변경하려고했습니다. 문제가 더 잘 설명되어 있습니다. –