我在我的页面中注入了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!
有人可以解释为什么第一次失败。
答案 0 :(得分:4)
<body>
元素没有(直接)加载外部内容,因此它没有load
个事件。
使用window
代替(使用jQuery包装window
对象本身,不要尝试选择<window>
元素。)
$(window).on('load', loadToggleCSS);