当前位置:嗨网首页>书籍在线阅读

08-问题

  
选择背景色: 黄橙 洋红 淡粉 水蓝 草绿 白色 选择字体: 宋体 黑体 微软雅黑 楷体 选择字体大小: 恢复默认

5.2.1 问题

你的一个事件处理程序为DOM元素添加类,用 setTimeout() 等待一秒钟,然后删除该类:

$(document).ready( function() {
   $('.clicky').click( function() {
     $(this).addClass('clicked');
     setTimeout( function() {
        $(this).removeClass('clicked');
     }, 1000 );
   });
});

当你单击时添加该类,但是却无法删除它。你已经确认正在调用 setTimeout() 中的代码,但是似乎什么也没做。 你以前使用过 .removeClass() ,代码看上去也是正确的。在两个地方你都使用了 $(this) ,但是在 setTimeout() 调用中它似乎不起作用。