如何在$(document).ready函数中添加多个函数

时间:2011-12-02 17:10:27

标签: javascript jquery

我有这个并且它工作正常:

$(document).ready(
    highlightTableRow
);

但是当我添加第二个函数(见下文)时,第二个函数不起作用。

$(document).ready(
    highlightTableRow,
    attachClickLinkHandlerForRowLink
);

在我的ready函数中添加第二个函数的正确语法是什么?感谢。

编辑:添加语法错误。 (蚀)

$(document).ready(
    highlightTableRow();  **// error:Syntax error, insert ")" to complete Arguments**
    attachClickHandlerForRowLink();  **//error: Missing semicolon**
); **// error: Syntax error on token ")", delete this token**


var originalRowBackground;

function highlightTableRow(){
    $('[class^="contentRow"]:has(a)').live('mouseenter', enterRowFunction).live('mouseleave', exitRowFunction);
}

function enterRowFunction(){
    originalRowBackground = $(this).css('background-color');
    $(this).css({'background-color': "#EFE3FF", 'cursor': 'pointer'});
}

function exitRowFunction(){
    $(this).css({'background-color': originalRowBackground, 'cursor': 'pointer'});
}

function attachClickHandlerForRowLink(){
    $('[class^="contentRow"]:has(a)').live('click', clickRowLink);
}

function clickRowLink(){
    window.location = $(this).find("a").attr("href");
}    **//error: Missing semicolon**

5 个答案:

答案 0 :(得分:9)

你可以做到

$(document).ready(function() {
    highlightTableRow();
    attachClickLinkHandlerForRowLink();
});

您也可以将$(document).ready()部分更改为$(function(),以便获得

$(function() {
    highlightTableRow();
    attachClickLinkHandlerForRowLink();
});

只做更短的

答案 1 :(得分:4)

尝试:

$(document).ready(function(){
    highlightTableRow();
    attachClickLinkHandlerForRowLink();
});

答案 2 :(得分:3)

我会做这样的事情:

$(document).ready(function()
{
    highlightTableRow();
    attachClickLinkHandlerForRowLink();

});

我错过了这一点吗?

答案 3 :(得分:3)

你为什么不这样使用?

$(document).ready(function(){
    highlightTableRow();
    attachClickLinkHandlerForRowLink();
});

答案 4 :(得分:2)

document.ready采用功能

$(document).ready(function() {
    highlightTableRow();
    attachClickLinkHandlerForRowLink();
});