我正在尝试这个jquery插件http://plugins.jquery.com/project/stylish-select-box/
它运行良好,但在noConflict模式下使用prototype + jquery 这个功能破坏了其他脚本
Array.prototype.indexOf = function (obj, start) {
for (var i = (start || 0); i < this.length; i++) {
if (this[i] == obj) {
return i;
}
}
};
任何帮助?
答案 0 :(得分:1)
请参阅https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Global_Objects/Array/indexOf
Array已经有一个本机indexOf方法。以不会产生相同结果的方式更改它会破坏事物。哎呀,即使尝试替换原生方法也可能会导致hasOwnProperty
等方法出现问题。
如果您真的想要该功能,请将其重命名为myIndexOf
或其他内容,以避免冲突。
答案 1 :(得分:0)
1.6之前的Javascript版本没有实现indexOf
(即IE6)。但是,您可以轻松检查indexOf是否已实现:
if (!Array.prototype.indexOf)
{
Array.prototype.indexOf = function(obj, start) {
//
}
}