Javascript 为什么.on(';load';函数)不使用JS模板?

Javascript 为什么.on(';load';函数)不使用JS模板?,javascript,jquery,handlebars.js,mustache,Javascript,Jquery,Handlebars.js,Mustache,我在我的页面中注入mustachejs模板,然后我就有了一个在这些模板上启动的函数 JS例如: function loadToggleCSS() { console.log("loadToggleCSS : fired!"); $("button").toggleClass('status0').toggleClass('status1'); console.log("loadToggleCSS : finished!"); } $('body').on('load',

我在我的页面中注入mustachejs模板,然后我就有了一个在这些模板上启动的函数

JS例如:

function loadToggleCSS() {
    console.log("loadToggleCSS : fired!");
    $("button").toggleClass('status0').toggleClass('status1');
    console.log("loadToggleCSS : finished!");
}

$('body').on('load', loadToggleCSS); // <------ this doesn't fire on template

loadToggleCSS(); //  <------------------------- this DOES fire!
函数loadToggleCSS(){
log(“loadToggleCSS:fired!”);
$(“按钮”).toggleClass('status0').toggleClass('status1');
log(“loadToggleCSS:finished!”);
}
$('body')。在('load',loadToggleCSS);// 
元素没有(直接)加载外部内容,因此它没有
加载
事件

改用
window
(用jQuery包装
window
对象本身,不要尝试选择
元素)

元素没有(直接)加载外部内容,因此它没有
加载事件

改用
window
(用jQuery包装
window
对象本身,不要尝试选择
元素)


只需在
.getJSON
回调处理程序的底部触发
loadToggleCSS
。只需在
.getJSON
回调处理程序的底部触发
loadToggleCSS
$(window).on('load', loadToggleCSS);