激活菜单项

0
视频
0
完成
0%
进度
0
分钟
0
完成
0%
进度

点击这个状态上的导航菜单 ... 可以打开对应的地址来显示任务项目 ... 我们可以为这个菜单项,根据当前页面的地址来添加一个 css 类,为这个菜单项添加点额外的样式 ... 用它可以区分一下,当前打开的地址,属于哪一个菜单项 ...

在我们可以先在全部,这个菜单项上添加一个叫 selected 的类 ... 这个类的样式已经在应用里面定义好了,就是会加粗显示文字 ...

然后用 jQuery 找到所有的菜单项上的 a 标签 ... 去掉 selected 类 .. 再根据当前的地址上的参数,去在对应的菜单项上添加一个 selected 类 ...

先打开应用的主页 index.html ... 在这里找到定义页脚模板的地方 ... 然后在这个导航上面,为全部这个菜单项上的 a 标签上添加一个 selected 类 ...

保存一下 ...

再打开应用的视图 ... AppView.js ...

在这个视图里面,找到 render 方法 ... 然后用一个 this.$ ... 在当前这个视图下面,去查找一些东西 ... 要找的元素是 #filters 这个 id 下面的 li 标签下面的 a 标签 ....

用一个 removeClass 这个方法 ... 去掉这些标签里面的 selected 这个类 ...

然后再根据当前的地址 ... 去过滤一下 ... 用 filter 这个方法 ... 指定一下要过滤的条件 ... 也就是href 这个属性的值 ... 这里用一个 #/ 后面再加上当前页面地址上的参数的值 ... 这里用 app.TodoFilter 来表示 ... 如果有参数值,就让它等于这个参数的值 ... 如果没有,就让它等于一个空白 ...

最后,再对过滤出来的这个 a 标签上面,去添加一个 selected 类 ... 用 addClass 这个方法 ...

// 导航菜单激活状态
this.$('#filters li a')
.removeClass('selected')
.filter('[href="#/' + (app.TodoFilter || '') + '"]')
.addClass('selected');

保存 ... 回到浏览器 ... 刷新 ... 当前的位置是应用的首页 ... 所以, 在 全部 这个菜单项上会添加一个 selected 的 css 类 ... 你会看到,会加粗显示这个菜单项上的文字 ...

再点一下 进行中 .... 这样会在先去掉在全部这个菜单项上的 selected 类 ... 然后在这个进行中上面添加一个 selected 类 ...

再看一下 已完成 ...

去掉了在 进行中 上面的 selected 类,把它又添加到了 已完成 这个菜单项上 ...

1:52
0:00
6:36
3:22
3:42
0:00
2:29
4:08

激活菜单项《 Backbone 应用实例 》

统计

15260
分钟
0
你学会了
0%
完成

社会化网络

关于

微信订阅号

扫描微信二维码关注宁皓网,每天进步一点