Javascript 如果缺少脚本,则跳过函数
我正在构建一个内容管理系统,因此我必须对加载功能进行创新 我有两个脚本在加载时运行。主页和导航菜单的随机背景图像。我将两者都包含在一个单独的脚本中,该脚本在加载时运行。获取背景图像的唯一页面是主页。因此,在没有链接随机主脚本的所有其他页面上,脚本会出错,并且菜单不会加载 我想先执行背景图像。一个糟糕的解决方法是先加载菜单,然后让随机的主脚本在任何子页面上中断,但这并不理想,我希望找到一个解决方案 我想先加载图像,然后运行导航脚本。如果图像脚本未定义,我希望它跳过并执行导航脚本 这是我的密码:Javascript 如果缺少脚本,则跳过函数,javascript,function,onload,undefined-function,Javascript,Function,Onload,Undefined Function,我正在构建一个内容管理系统,因此我必须对加载功能进行创新 我有两个脚本在加载时运行。主页和导航菜单的随机背景图像。我将两者都包含在一个单独的脚本中,该脚本在加载时运行。获取背景图像的唯一页面是主页。因此,在没有链接随机主脚本的所有其他页面上,脚本会出错,并且菜单不会加载 我想先执行背景图像。一个糟糕的解决方法是先加载菜单,然后让随机的主脚本在任何子页面上中断,但这并不理想,我希望找到一个解决方案 我想先加载图像,然后运行导航脚本。如果图像脚本未定义,我希望它跳过并执行导航脚本 这是我的密码: f
function start() {
var randH = randomHome();
var undefined = false;
if (randH === undefined) {
loadNAV();
}
else {
randomHome();
loadNAV();
}
}
window.onload = start;
这两个函数在单独的文件中链接,按如下方式列出时工作正常:
function start() {
loadNAV();
randomHome();
}
window.onload = start;
但这会在未获取背景图像的子页面上留下错误。因此,我正在搜索一个无错误的答案,该答案首先加载背景图像,或跳过背景图像,然后再加载导航。创建一个加载时运行的匿名函数,并检查是否存在
start()
函数。如果它存在,就给它打电话
window.onload = function() {
if (start) {
start();
}
};
删除
undefined=false
行undefined
是一个保留关键字,其计算结果已为“falsy”,您所做的操作将导致依赖于undefined
关键字的任何其他操作出现许多问题。相反,将if
语句更改为使用=
而不是=
<代码>=计算相等,==
计算标识
如果您试图阻止randomHome()
脚本在不存在时运行,则在start()
函数中会使用相同的代码
function start() {
// only call randomHome function if it exists
if (randomHome) {
var home = randomHome();
// anything else to do with the homes goes here
}
// load the nav regardless of whether randomHome exists
loadNAV();
}
这就是最终成功的原因。谢谢大家
function start() {
if(window.randomHome == undefined )
{
loadNAV();
}
else {
randomHome();
loadNAV();
}
}
window.onload = start;
undefined
是一个保留字,当===testforequality时,不能用作变量名==testforequalityidentity@soviutstart函数一直存在于每一页上,它的randomHome脚本并不存在于每一页上……这仍然在var randH=randomHome()处中断;函数start(){var randH=randomHome();if(randH==undefined){return true;loadNAV();}否则{randomHome();loadNAV();}}window.onload=start;window.onload=function(){if(randomHome){randomHome();loadNAV();}else{loadNAV();}@这就是你的意思吗?问题是,它仍然认为randomHome是未定义的。