IE浏览器 - “错误:对象不支持这个动作”
问题描述:
我得到一个令人沮丧的IE7错误,我无法绕过。它在Chrome和Firefox工作正常,但不是在IE ..IE浏览器 - “错误:对象不支持这个动作”
行我收到错误是:item = listGetAt(list,'1','-');
这是调用以下自定义方法:
function listGetAt(list,position,delimiter) {
if(delimiter == null) { delimiter = '-'; }
list = list.split(delimiter);
if(list.length > position) {
return list[position];
} else {
return list.length;
}
}
灿任何人都看到我不能做的事情?
非常感谢您的任何帮助。
杰森
答
普代码
为什么传递一个字符串作为一个数字参数?
我会考虑
function listGetAt(list,position,delimiter) {
delimiter = delimiter || '-';
if (list.indexOf(delimiter) ==-1) return -1;
list = list.split(delimiter);
return list.length>=position?list[position]:null;
}
+0
感谢mplunjan ..它原来是一个int ..只是在试图找出IE问题是什么并且必须忘记删除它的时候,将它留在那里......这就是说,这种方法不是问题..它是接收调用它的变量。感谢您的建议。 – Jason 2012-07-24 12:34:46
究竟是什么'list'包含哪些内容?这是一个糟糕的命名约定,一直称它为列表 - 在某个阶段它将是一个数组 – mplungjan 2012-07-24 08:10:59
发现问题..它看起来像“item”是一个保留字..当我将var名称更改为'selectedItem' ,它工作得很好.. – Jason 2012-07-24 08:16:30
仍然不好的代码,并且不传递'1'来代替传递1 – mplungjan 2012-07-24 08:18:08