2012-03-08 3 views

답변

2

예. 대부분의 FieldControl에서 AllowFirstFocus 속성을 false로 설정할 수 있습니다. http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.webcontrols.basefieldcontrol.allowfirstfocus.aspx

+0

감사합니다.하지만 sitecolletion에 설정하는 방법이 있습니까? 나는 행운없이 "HasInitialFocus"를 제거하려고 노력했습니다. 페이지 위쪽에 고정 메뉴/리본이 있습니다 (masterpage) 고정 리본 안에있는 필드 중 하나에 항상 포커스를 설정하는 방법이 있습니까? – Plexus81

+0

원하는 필드에 포커스를 설정하려면 masterpage에서 호출하는 javascript를 사용하는 것이 좋습니다. –

+0

하지만 자바 스크립트를 사용하면 더 이상 뛰어 내지 않습니까? – Plexus81

1

SharePoint의 내부 기능 중 하나를 재정 의하여 해결할 수있었습니다. 더러운 해킹이지만 사용하면주의해야합니다.

ExecuteOrDelayUntilScriptLoaded(function(){ 
    RTE.PublishingRichTextEditor.setInitialFocusToEditableRegion = function(){}; 
}, 'SP.UI.RTE.Publishing.js'); 

이렇게하면 효과적으로 자동 초점이 비활성화되지만 의도하지 않은 부작용이 발생할 수 있습니다. 주의해서 사용하십시오!

페이지가 편집 모드 인 경우에만 코드를 실행합니다. 나는이를 감지하는 방법은 여기에서 코드를 사용하는 것입니다 : https://sharepoint.stackexchange.com/questions/12792/how-do-i-know-if-the-page-is-in-edit-mode-from-javascript

0

나는 위의 답변

This ExecuteOrDelayUntilScriptLoaded(function() { RTE.PublishingRichTextEditor.setInitialFocusToEditableRegion = function() { }; RTE.Canvas.setInitialFocus = function() { }; }, 'sp.ui.rte.publishing.js');

+0

대신에 할 수 없다는 뜻 이겠니? – Waxen

+0

유능한, 내 나쁜! :) – Semogj

0

아무도 나를 위해 일한 다음 코드로 자동 초점을 방지 할 수 있었다를, 난 페이지 레이아웃에서 SharePoint 2013 및 게시 Html 필드 사용

나는 sp.ui.rte.publishing.js 파일에 방법을 생각하고 아래에 아무것도 그 방법을 덮어 쓸 때까지 :이 기능을 재정의 한 후 리치 HTML을 필드에있는 콘솔 오류 또는 비 원하는 동작을 찾을 수 없습니다

SP.SOD.executeFunc('sp.ui.rte.publishing.js', 'SP.ClientContext', function() { 
    RTE.Canvas.initialFocusOnRichText = function() { }; 
}); 

을 , 누군가가 고발하면 코멘트를하십시오.

관련 문제