javascript - 尝试使用 JavaScript 删除一个类,元素不采用其他类的属性

标签 javascript html css

所以每当我的页面的 scrollTop 达到 1 时,它会自动向下滚动到页面上的另一个位置(这在 JSFiddle 中演示得更清楚)。这确实有效,但是尝试从菜单项中删除一个类(使其变为“未选中”)时,会出现问题。该元素似乎没有获得其他类的属性并显示为标准文本(再次查看 JSFiddle 的演示)。我想知道如何解决这个问题。

下面的代码是我的问题所在:

<div id="homeButton" class="menuItem selected">Home</div>
<div id="overButton" class="menuItem">Over</div>
<div id="contactButton" class="menuItem">Contact</div>
.menuItem {
    padding-top: 29px;
    height: calc(100% - 29px);
    border: 0;
    text-align: center;
    font-family: Signika;
    font-size: 25px;
    color: rgb(203, 207, 218);
}
.selected {
    border-bottom: 4px solid rgb(59, 89, 202);
    height: calc(100% - 33px);
    color: rgb(160, 170, 218);
}
var homeButton = document.getElementById("homeButton");
var aboutButton = document.getElementById("overButton");

homeButton.className = homeButton.className - " selected";
aboutButton.className = aboutButton.className + " selected";

最佳答案

使用这个

$("#homeButton").removeClass( "selected" );
$("#overButton").addClass( "selected" );

代替

var homeButton = document.getElementById("homeButton");
var aboutButton = document.getElementById("overButton");

homeButton.className = homeButton.className - " selected";
aboutButton.className = aboutButton.className + " selected";

关于javascript - 尝试使用 JavaScript 删除一个类,元素不采用其他类的属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29996036/

相关文章:

javascript - 如何在 amcharts 图例中应用水平对齐?

javascript - 如何使用 javascript 打印弹出窗口的内容?

javascript - 输入上的 Bootstrap 启用按钮

javascript - 当 div 中的内部 html 更改时触发事件

css - chrome 页脚重叠内容尽管清晰 :both used

javascript - 为什么 svg 不能缩放以适应子元素?

php - 用 PHP 在 txt 文件上写一个新行?

html - 从子div内部访问父div的宽度

css - 如何做一个 Chrome/Opera 特定的样式表?

css - 为简洁优化 CSS 选择器