我第一次使用.split()调用函数时,它会失败,但此后它会起作用。知道IE9为何如此?有没有人有这个错误/复杂的经验和修复它?如果不是这样,是否可以替代.split()在IE8和9中无缝运行?非常感谢。
编辑:
第一次调用函数时显示的错误消息是:
ERROR: SCRIPT5007: Unable to get value of the property 'split': object is null or undefined.
EDIT2,带来错误的代码:
function parseArgs() {
...
var urlParams = $(allE[i]).css('list-style-image').split('?')[1].split('_');
...
}
答案 0 :(得分:1)
要避免错误,请测试字符串对象是否为空。 Null没有成员:
function parseArgs() {
...
var urlParams = [];
var listStyleImage = $(allE[i]).css('list-style-image');
if(listStyleImage) { // <-- might be null
var items = listStyleImage.split('?');
if(items.length>0) urlParams = items[1].split('_');
}
...
}
答案 1 :(得分:-1)
您尝试split
的事情是一个jQuery对象。也许您必须首先尝试在其上调用.html()
或.text()
才能调用拆分功能。
更新
好的,我的坏。 .css()
不返回jQuery对象。有时它返回css属性的值。它可能是一个字符串或不是。但无论如何,.split()
只能在字符串对象上调用。刚刚浏览了文档:http://api.jquery.com/css/