为什么Internet Explorer不支持这个jQuery?

4
在调试在IE中无法正常工作的jQuery时,我发现了这个错误消息:
var item = $("#item_"+ itemArray[itemIndex]).find('a').text().trim();

Object doesn't support this property or method (script.js, line 100, character 2)

对我来说,字符2没有意义。根据显示的文本,字符2将是var中的字母a,但这显然没有任何意义。

(我不应该使用var吗?)

我知道jQuery在某种程度上起作用,否则脚本不可能在我的页面上运行到这个程度。


2
为什么?因为它是Internet Explorer。 - user142019
这个问题之前已经被问过了:https://dev59.com/VnE95IYBdhLWcg3wb9hb 基本上,看起来IE没有内置的trim()函数。 - Orbling
2
可能是重复问题: .trim()在JavaScript中在IE中无效 - Stephen
@Stephen - 这是一个非jQuery的问题,最佳答案会有所不同。 - Nick Craver
2个回答

19

IE没有 String.trim() 方法,你需要使用 $.trim()(如果可用则使用原生的trim,在IE中模拟它),像这样:

var item = $.trim($("#item_"+ itemArray[itemIndex]).find('a').text());

快点,罗杰!接受这个问题,因为它很快就会关闭:') 尼克的115k还不够! - user142019
@Time - 只是想说明一下,它不应该被关闭为那个重复问题,这里有一个比非jQuery问题更容易的解决方法(标记为重复),我已经在上面提供了 :) - Nick Craver
啊哈,我明白了,这与jQuery无关。 (Y) - user142019
土豆马铃薯。嗯,其实不是。好吧,你赢了。 ;) - Stephen

3

IE浏览器没有trim方法。

不过,你可以调用jQuery.trim(...)


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接