2011-09-27 5 views
2

sharepoint (2010)의 사용자 정의 응용 프로그램 페이지에서 사용자 정의 javascript 파일 ([mootools-1.2-core.js] [1])을 사용하고 있습니다. 형식이 일치하지 않습니다. wpadder.js의 오류 (Sharepoint 14/layouts에있는 Javascript 파일). 누구든지이 문제에 대한 해결책을 제공 할 수 있습니까? 내가 같은 오류가 있었기 때문에 오늘이 질문에 우연히 첫 번째 링크 = http://labs.steveottenad.com/type-mismatch-on-wpadder-js/내 사용자 정의 javascript가 sharepoint와 충돌합니다 (sharepoint 2010)

+0

기록의 경우 SharePoint 2013에서도 이러한 현상이 발생합니다. 어떻게 3 년 동안이 문제를 해결할 수 없었습니까? ... – K48

답변

0

내가 유형 불일치 오류 wpadder.js에 대한 구글 검색을 추천 할 것입니다.

셰어 (그리고 일반적으로 가능 IE)가 어떤 플러그인/배열 프로토 타입을 확장하려고 스크립트에 문제가 있습니다 : 그것은 것을 언급하기 때문에 브라이언 Brinley 가리키는 링크는 (http://labs.steveottenad.com/type-mismatch-on-wpadder-js/)는 실제로 도움이되었다.

내가 작업 된 코드는indexOf방법을 포함 Array.prototype을 확장했다. 나는 코드에서 위의 비트를 제거로wpadder.js에서

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; 
    } 
} 

오류

은 곧 사라졌다. 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; 
} 

indexOf(array, item)와 코드에서 모든 array.indexOf(item)을 교체했다.

+0

mootools를 수정하여 문제를 "수정"하기 때문에이 링크는 실제로 도움이되지 않습니다. jQuery에서도 동일한 문제가 발생합니다. SharePoint 2010 페이지 맨 위에있는 웹 파트 도구 모음이 끊어집니다. 솔루션을 살펴보면 계속 게시되지만 첫 번째 링크는 타사 라이브러리의 솔루션이 아닙니다. –

+0

올바르게 호출하면 변수의 범위가 문제가됩니다. 그리고 자바 스크립트의 전역 범위를 사용하면 실제로는 두 가지 선택 만 할 수 있습니다. 타사 라이브러리 또는 셰어 포인트 라이브러리를 변경하십시오. 캐스케이드 문제에 대한 두려움 때문에 셰어 포인트 라이브러리에 대해 조언합니다. –

+0

내가 발견 한 바로는 변수의 범위 지정에 문제가 아니라 문제를 일으키는 Microsoft의 for/in 루프를 자유롭게 사용합니다. 사실, wpadder.debug.js를 살펴보면, 내가 실패한 줄을 발견 할 수 있으며 배열을 반복하는 for/in 루프가 있습니다. 숫자 값만 반환해야하지만, 적어도 jQuery의 경우에는 인덱스로 "indexOf"라는 문자열 값을 반환한다는 것입니다. ExtJs 사용자도 동일한 문제를 경험합니다. http://www.sencha.com/forum/showthread.php?101262-Array.prototype-indexOf-remove-modifications –

관련 문제