使用SP.SOD.executeOrDelayUntilScriptLoaded方法更改Sharepoint預定義JavaScript函數

來源:互聯網
上載者:User
    在sharepoint中有許多預定義的javaScript檔案,在這些js檔案中時不時的遇到指令碼錯誤。要修複這些指令碼錯誤說簡單也簡單(直接更改14/12目錄下方的檔案即可),但是重裝或者更新之後呢?問題隨之又來了。

在此我們需要重新對這些方法或者變數做一個Hook(在指令碼執行前,使用js重寫出錯的那部分邏輯),然後修正其執行我們定義的指令碼即可。在本文中,筆者遇到這樣的錯誤。sp.ui.rte中一個方法(RTE.Range.ParentElement中 moveToElementText)報錯 。而這個方法在頁面載入完成後就被調用,使得在Document的onLoad事件中無法對這個函數做Hook。我們需要在這個指令碼載入之後就執行我們定義的指令碼,通過尋找SDK找到如下方法適合做這樣的事情。

 

方法:

SP.SOD.executeOrDelayUntilScriptLoaded(func, depScriptFileName) 

 參數:

     func:需要執行的函數(指令碼用函數封裝起來)。

     depScriptFileName:等待的指令檔。

如下:

    在 jquery.1.3.2.min.js載入完成後執行function中的指令碼

     SP.SOD.executeOrDelayUntilScriptLoaded(function(){

    //to do something 

},"jquery.1.3.2.min.js");

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.