我的自定义javascript与sharepoint javascript冲突(sharepoint 2010)

时间:2011-09-27 11:52:15

标签: sharepoint sharepoint-2010

我在sharepoint(2010)的自定义应用程序页面中使用自定义javascript文件([mootools-1.2-core.js] [1])。我在wpadder.js中遇到类型不匹配错误( Sharepoint Javascript文件,驻留在14 /布局中。)是否有人可以为此问题提供解决方案?

2 个答案:

答案 0 :(得分:0)

我建议谷歌搜索类型不匹配错误wpadder.js - first link = http://labs.steveottenad.com/type-mismatch-on-wpadder-js/

答案 1 :(得分:0)

我今天偶然发现了这个问题因为我有同样的错误。 Brian Brinley指出的链接(http://labs.steveottenad.com/type-mismatch-on-wpadder-js/)实际上有所帮助,因为它提到了:

  

Sharepoint(可能是IE)一直存在问题   尝试扩展Array Prototype的插件/脚本。

我正在处理的代码扩展了 Array.prototype 以包含 indexOf 方法。

if (!Array.prototype.indexOf) {
    Array.prototype.indexOf = function (obj, start) {
        for (var i = (start || 0); i < this.length; i++) {
            if (this[i] === obj) { return i; }
        }
        return -1;
    }
}

我从代码中删除了上述位后, wpadder.js 中的错误就消失了。

作为indexOf方法的替代,我写了这个:

// this function returns the index of the first occurrence 
// of the given item in a simple array
function indexOf(array, item, start) {
    for (var i = (start || 0); i < array.length; i++) {
        if (array[i] === item) {
            return i;
        }
    }
    return -1;
}

并将代码中的所有array.indexOf(item)替换为indexOf(array, item)