jquery - 如何在点击时更改其他列表项的不透明度?
问题描述
我正在创建一个页面,其中包含可单击项目列表,这些项目在单击时滚动到 div。我正在寻找一种方法来更改单击时列表项的不透明度,例如,如果您要单击顶部的列表项,则其他项的不透明度会降低
我还希望在用户位于列表项链接到的相应 div 上时突出显示列表项(完全不透明度),以便列表项在用户滚动右侧的图像时更改不透明度,突出显示列表项滚动。
有没有人对如何实现这一目标或任何示例有任何建议?
$("#generationbutton").click(function() {
$('.wrapperright').animate({
scrollTop: $("#generationanxiety").offset().top},
1500);
});
解决方案
https://codepen.io/anon/pen/pYOrOV
您可以创建一个具有不透明度的类,并在用户单击列表中的项目时将其删除。
$('.bio ul div').addClass('opacity');
$(this).removeClass('opacity');
第一行确保所有 div 将获得不透明度。第二行将从您单击的菜单项中删除它。
对于滚动部分,您需要使用滚动侦听器获取每个 div 的 scrollTop 位置,并在用户到达该点时从中删除 opacity 类。
推荐阅读
- c++ - 什么是错位临时?
- python - 如何在不枚举的情况下索引数据加载器中的特定对象
- android - 使用任何库在 google maps for android 上渲染 kml
- python - 'sudo pip3' 而不是 'pip3' 使 pip3 工作
- javascript - 如何计算 jQuery 表格中选定选项的特定值
- php - 远程服务器上的 strtotime() 问题
- nlp - 使用 hunspell 模块提取词干
- javascript - 获取请求在测试模式下工作,但在生产中失败 - Google App Engine
- javascript - 使用 Javascript 解析 HTML bodyText
- go - 读取任意数量的输入标准输入