请考虑以下脚本块。问题被解释为评论。
$(document).ready(function(){
function changeMenu(e) {
$('#navigator').removeClass('a').removeClass('b').addClass(e);
};
// Neither this line
changeMenu('element-id');
$('.mainmenuitem').click(
// Nor this line execute the function
changeMenu(this.id)
);
})
请注意,如果我将代码$('#nav').removeClass('a').removeClass('b').addClass(e);
排除在函数之外,并在已调用changeMenu()
的2个位置使用此代码,则效果很好。
答案 0 :(得分:1)
语法错误,您需要关闭函数,或者在这种情况下,向事件处理程序添加函数:
$(document).ready(function(){
function changeMenu(selectedMenuID) {
$('#navigator').removeClass('a b').addClass(selectedMenuID);
}
changeMenu('parse-gallery');
$('.mainmenuitem').click(function() {
changeMenu(this.id)
});
});
答案 1 :(得分:1)
请检查代码中遗漏的内容..
$('.mainmenuitem').click(function(){
changeMenu(this.id)
});