jQuery wrap强制执行多个文档就绪回调

时间:2010-06-04 01:42:52

标签: jquery

我有以下代码:

function CreateRoundbox(selector, scope) {
    $(selector).wrap('<div class=\"' + scope + ' dialog\"><div class=\"bd\"><div class=\"c\"><div class=\"s\"></div></div></div></div>');
    $('div.' + scope).prepend('<div class=\"hd\"><div class=\"c\"></div></div>').append('<div class=\"ft\"><div class=\"c\"></div></div>');
}

每当我使用此函数并调用“wrap”方法时,它会导致$(document).ready()方法在页面上第二次触发。这是对函数的调用(它存在于文档就绪块中):

CreateRoundbox(".roundbox", "roundbox-wrapper");      

有没有人遇到过这个?我使用包装错了吗?

更新

修正了使用行,我不小心在范围文字中添加了一个点

1 个答案:

答案 0 :(得分:0)

function CreateRoundbox(selector, scope) {
                            //           v----> this will result to class=".roundbox-wrapper", which is, I guess, not the thing you want in there.. :)
    $(selector).wrap('<div class=\"' + scope + ' dialog\"><div class=\"bd\"><div class=\"c\"><div class=\"s\"></div></div></div></div>');
    $('div.' + scope).prepend('<div class=\"hd\"><div class=\"c\"></div></div>').append('<div class=\"ft\"><div class=\"c\"></div></div>');
   //     ^    ^
   //     |    |--- look at scope.... then, look here at the second argument, CreateRoundbox(".roundbox", ".roundbox-wrapper");
   //     |--- look at the dot.... :)   CreateRoundbox(".roundbox", ".roundbox-wrapper");

}