如果点击则加载();?

时间:2013-04-02 11:17:48

标签: jquery menu

我有这种'伪'代码:

if($('#menuOption1').click()){
  $('#mainContent').load('optionContent1.html #optionContent1');
}
else if($('#menuOption2').click()){
  $('#mainContent').load('optionContent2.html #optionContent2');
}
else if($('#menuOption3').click()){
  $('#mainContent').load('optionContent3.html #optionContent3');
}

这是自我解释的。我有一个菜单有3个选项(#menuOption *),当我点击其中一个选项时,它假设加载();它是对应的html文件(optionContent * .html - #optionContent *)到我的index.html(#mainContent)中。 代码更正,请?

佩德罗

2 个答案:

答案 0 :(得分:3)

您应该将代码添加到单击事件处理程序中,如下所示:

$('#menuOption1').click(function(){
  $('#mainContent').load('optionContent1.html #optionContent1');
});

等...

答案 1 :(得分:2)

click返回一个jquery对象,而不是一个布尔值,你真正想要的是:

$('#menuOption1').click(function(e) {
    $('#mainContent').load('optionContent1.html #optionContent1');
    return false;
});

$('#menuOption2').click(function(e) {
    $('#mainContent').load('optionContent2.html #optionContent2');
    return false;
});

$('#menuOption3').click(function(e) {
    $('#mainContent').load('optionContent3.html #optionContent3');
    return false;
});

取决于您的HTML标记我确定您也可以优化Javascript代码