如何在没有document.ready()的情况下拥有多个javascript函数

时间:2012-08-26 20:50:46

标签: javascript jquery

我的工作代码包括:

  $(document).ready(function() 
  { $("#num1").click(function() { $("li.elementsA").addClass("alerty"); 
     return false }); });
  $(document).ready(function() 
  { $("#num2").click(function() { $("li.element").addClass("ok"); 
     return false }); });

如果没有document.ready片段,我怎样才能拥有这两个功能。

我试过

  $(document).ready(function() 
  { $("#num1").click(function() { $("li.elementsA").addClass("alerty"); 
    return false }); }
  { $("#num2").click(function() { $("li.element").addClass("ok"); 
    return false }); });

但它不起作用。

1 个答案:

答案 0 :(得分:3)

在你的第二个例子中,DOM Ready处理函数在最后}的第3行末尾关闭,之后你得到SyntaxError: Unexpected token {

您只需将两个click处理程序包装在DOM就绪处理程序中:

$(document).ready(function () {
    $("#num1").click(function () {
        $("li.elementsA").addClass("alerty");
        return false;
    });
    $("#num2").click(function () {
        $("li.element").addClass("ok");
        return false;
    });
});

beautified您的代码也让您更容易阅读。 =]

以下是非美化的更改,使其相对于原始代码“更”可见:

  $(document).ready(function() 
  { $("#num1").click(function() { $("li.elementsA").addClass("alerty"); 
    return false });
//↓Remove { here     ↑And } here
    $("#num2").click(function() { $("li.element").addClass("ok"); 
    return false }); });