是text.trim()真的不能在IE8中工作

时间:2010-11-20 10:07:17

标签: jquery

当我在chrome和firefox中测试我的网页时,它们工作正常。但是在IE中它不起作用。

我找到了

(" .class li").text().trim()没有在IE中工作,他给我错误

Object不支持此属性或方法。但在FF和铬他们工作正常。我是不是有点不对劲呢?

3 个答案:

答案 0 :(得分:15)

试试这个:

$.trim($(".class li").text());

它在你的情况下不起作用的原因是因为你调用的trim方法不是jquery.trim方法。它是一个在对象实例上调用的方法(.text()返回一个字符串)。所以有些浏览器内置了这种方法,而IE却没有。

答案 1 :(得分:1)

String.trim不是旧语言规范的一部分,它是城里的新生儿。幸运的是,您可以轻松添加此功能。

if (typeof String.prototype.trim != "function") {
  String.prototype.trim = function () {
    return this.replace(/^\s+|\s+$/g, '');
  };
}

现在你可以修剪你想要的任何String

" just do it   ".trim()
$(" .class li").text().trim()

答案 2 :(得分:1)

如果要删除前导空格和尾随空格,则需要使用

replace(/^\s+|\s+$/g, '')