use*_*808 3 javascript sharepoint jquery document-ready
我想检查某个特定的 JS 文件是否已加载到 document.ready 中。
像这样的东西:
if(file already called/loaded) { // my code }
else {//some other code}
Run Code Online (Sandbox Code Playgroud)
JS 文件不是任何插件。
它基本上是一个与 SharePoint 相关的 JS 文件,例如 Sp.JS。
我们只知道文件名。
[更新 - 添加代码]
我添加了以下代码,它在控制台中抛出错误: SP.Runtime.js 已加载。
如果我删除 SP.Runtime.js 的加载,我的代码将无法在默认情况下未加载 Runtime.Js 的某些页面中运行。
$(document).ready(function() {
var scriptbase = _spPageContextInfo.webServerRelativeUrl + "/_layouts/15/";
$.getScript(scriptbase + "init.js",
function() {
$.getScript(scriptbase + "SP.Runtime.js",
function() {
$.getScript(scriptbase + "SP.js",
function() {
$.getScript(scriptbase + "SP.Taxonomy.js",
function() {
context = SP.ClientContext.get_current();
// My custom function //
});
});
});
});
});
Run Code Online (Sandbox Code Playgroud)
请建议。
谢谢
SharePoint JavaScript 库,特别是SP.SOD命名空间包含用于加载/确保 JavaScript 文件的方法。
SP.SOD.executeOrDelayUntilScriptLoaded - 如果加载包含指定函数的文件,则执行该函数,例如:
ExecuteOrDelayUntilScriptLoaded(myfunc, "SP.js");
function myfunc()
{
}
Run Code Online (Sandbox Code Playgroud)
在这种情况下,将在加载 sp.js 文件后myfunc调用
SP.SOD.executeFunc - 确保加载包含指定函数的指定文件,然后运行指定的回调函数,例如:
SP.SOD.executeFunc('sp.js', 'SP.ClientContext',
function (){
//your code goes here...
});
Run Code Online (Sandbox Code Playgroud)
该行为与前面的示例类似,但主要区别在于该函数还支持按需加载脚本。
| 归档时间: |
|
| 查看次数: |
16385 次 |
| 最近记录: |