gpt4 book ai didi

javascript - 有没有办法让 webkit 的 javascript 正确处理空格?

转载 作者:行者123 更新时间:2023-11-28 10:24:21 25 4
gpt4 key购买 nike

事实证明,在处理 XSLT 时,webkit 对于空格的处理似乎并不是特别好。它似乎平等地对待换行符、回车符、制表符和空格,甚至到了 substring-after('test string','
') 的地步。将返回string .

有没有办法让它正常运行,或者这是 webkit 中没有解决方法的错误?

编辑:这是一些演示错误的 JavaScript:

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(., '&#10;'))\"/></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”。

最佳答案

我无法使用 Safari 5.0.3 重现该问题。测试用例(浏览器窗口中加载的 XML 文档):

<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="test2011012801Xsl.xml"?>
<test>foo bar</test>

样式表在哪里

<xsl:stylesheet
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0">

<xsl:template match="/">
<html>
<head>
<title>Test</title>
</head>
<body>
<xsl:apply-templates/>
</body>
</html>
</xsl:template>

<xsl:template match="test">
<p><xsl:value-of select="string-length(substring-after(., '&#10;'))"/></p>
</xsl:template>

</xsl:stylesheet>

Windows 上的 Firefox (3.6) 和 Safari 中的输出均为“0”。因此,至少通过该测试,没有证据表明文本节点中的空格字符被视为换行符。

关于javascript - 有没有办法让 webkit 的 javascript 正确处理空格?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4822883/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com