我有一个使用jQuery和CRIR的JSP来显示带有单选按钮的表单。我正在使用CRIR来设置单选按钮的样式,以便为它们提供自定义外观。
CRIR似乎在set itself up加载时显示如下:
crir.addEvent(window, 'load', crir.init, false);
我想在页面加载上执行一些初始化,但在 crir.init
之后(因为crir.init
设置了所有单选按钮)。当我使用
$(document).ready( function() {
updateUIOnLoad();
});
它似乎在 crir.init
之前被称为。
我不熟悉Javascript事件,所以我想知道是否有办法设置,以便函数在文档加载时执行,但在crir.init
之后。
答案 0 :(得分:1)
据我所知,问题是crir正在设置窗口的'load'事件,而你的jQuery正在响应文档'ready'事件(正如你所看到的那样,事先在窗口的'加载'事件)。
您可以将jQuery更改为:
$(window).load(
function(){
updateUIOnLoad();
});
只要在标记中调用crir之后,它就应该工作(并且在localhost上工作,但遗憾的是我无法使JS Fiddle演示正常工作)。
你也可以测试crir作为函数调用的一部分:
$(window).load(
function(){
if (crir) {
updateUIOnLoad();
}
});
有一个这样的演示,working on my site at: http://davidrhysthomas.co.uk/so/soCrir.html。