• 使用SP.SOD.executeOrDelayUntilScriptLoaded方法更改Sharepoint预定义JavaScript函数


        在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");

  • 相关阅读:
    1009 说反话 (20)
    1008 数组元素循环右移问题 (20)
    1007 素数对猜想(20 分)
    1006 换个格式输出整数 (15)
    PAT 1005 继续(3n+1)猜想 (25)
    PAT 1004 成绩排名 (20)
    PAT 1003 我要通过!(20)
    PAT 1002 写出这个数 (20)(20 分)
    PAT 1001 害死人不偿命的(3n+1)猜想 (15)
    人口普查(20) PAT
  • 原文地址:https://www.cnblogs.com/netwenchao/p/2446054.html
Copyright © 2020-2023  润新知