问题描述
我要附加到SP2013 NewForm上的脚本如下
<script src="https://.../lib/JQuery/jquery-1.10.2.min.js"></script>
<script src="https://.../Configuration/SiteAssets/jquery.SPServices-2014.02.min.js"></script>
<script>
function NullFn() {console.log('Fn Load')}
function NullFn1() {console.log('Fn1 Load')}
function NullFn2() {console.log('Fn2 Load')}
function NullFn3() {console.log('Fn3 Load');}
SP.soD.executeOrDelayUntilScriptLoaded(NullFn,'sp.js');
SP.soD.executeOrDelayUntilScriptLoaded(NullFn1,'jquery.SPServices-2014.02.min.js');
SP.soD.executeFunc('sp.js','SP.ClientContext',NullFn2);
SP.soD.executeOrDelayUntilScriptLoaded(NullFn3,'SP.UserProfiles.js');
</script>
Fn1和Fn3似乎处于等待模式,即使SPServices显示已在“网络”选项卡中加载(200,确定)。
什么阻止了Fn1的执行?
解决方法
发现了问题,有一个幕后脚本根据onpageload类型事件重新加载jQuery,这导致SPServices中断。