웹킷이 XSLT를 처리하는 동안 공백으로 특히 잘 작동하지 않는 것으로 나타났습니다. substring-after('test string',' ')
이 string
을 반환하는 지점까지도 줄 바꿈, 캐리지 리턴, 탭 및 공백을 똑같이 처리하는 것으로 보입니다.공백을 올바르게 처리하기 위해 웹킷의 JavaScript를 얻는 방법이 있습니까?
제대로 작동하도록하는 방법이 있습니까? 아니면 해결 방법이없는 webkit의 버그입니까?
편집 : 여기에 오류가 보여 일부 자바 스크립트입니다 :
var parser = new DOMParser();
var xsltText = "<xsl:stylesheet xmlns:xsl=\"http://www.w3.org/1999/XSL/Transform\"version=\"1.0\"><xsl:template match=\"test\"><output><xsl:value-of select=\"string-length(substring-after(., ' '))\"/></output></xsl:template></xsl:stylesheet>";
var xslt = parser.parseFromString(xsltText, "text/xml");
var xmlText = "<test>test string</test>";
var xml = parser.parseFromString(xmlText, "text/xml");
var xsltProcessor = new XSLTProcessor();
xsltProcessor.importStylesheet(xslt);
var processed = xsltProcessor.transformToDocument(xml);
var result = processed.firstChild.textContent;
result
변수가 분명 '0'을 포함해야을; Safari 4 및 Chrome 8에서는 '6'을 반환합니다.
이것은 웹킷 버그로 https://bugs.webkit.org/show_bug.cgi?id=53375에서보고되며 버그 보고서는이 StackOverflow 질문을 참조합니다. –