我真的很困惑,不知道如何继续,可能你可以帮助我:)。
我做了一个带有菜单的html页面,该菜单将外部内容加载到div中(所有内容都使用jquery和ajax-load完成)。
如果我想添加第二个功能,没有任何事情发生,我不确定嵌套,是不是正确。
这是两个函数,第一个加载整个html页面,第二个加载外部div到上一个加载文件的div(希望我描述它以便你可以理解它:))(numRand是一个随机数,对问题不重要。)
function changeMenu(menupunkt) {
$(function(){
$('#mainContent').fadeOut('fast', function(){ $("#mainContent").load(menupunkt+".html?"+numRand);});
$('#mainContent').fadeIn('fast');});
return false;
}
这是第二个代码:
function changeSubMenu(submenupunkt,subdiv) {
$(function(){
$('#htmlContainer').fadeOut('fast',function(){ $("#htmlContainer").load(submenupunkt+".html?"+numRand+" div#"+subdiv);});
$('#htmlContainer').fadeIn('fast');});
return false;
}
我想结合这两个函数,以便我可以调用一个函数:
someFunction(menupunkt,submenupunkt,subdiv)
这应首先加载menupunkt.html,如果此操作已完成,则应加载div。
如果我只想加载menupunkt而没有submenupunkt或subdiv,我该如何调用该函数?
我希望我可以解释我的问题,以便你们可以遵循它,有点复杂,我知道:)
提前谢谢!
答案 0 :(得分:1)
首先
$(function() { .... code here .... });
是
的简写$(document).ready(function() { .... code here .... });
这是一种jQuery方法,用于设置在DOM加载时执行的函数。你在函数changeMenu
和changeSubMenu
中使用了这个,这是不必要的(除非你在页面开始加载时立即执行这两个函数,但那将是一个奇怪的设置方式。)
load()
命令采用将在加载完成时执行的回调函数。例如,
$("#mainContent").load(menupunkt+".html?"+numRand, [callback here]);
[callback]
可以是匿名函数(内联函数)或命名函数。
希望这有帮助