gpt4 book ai didi

javascript - 如何在 onclick 方法后更改 div 的 CSS 样式

转载 作者:搜寻专家 更新时间:2023-10-31 22:21:08 26 4
gpt4 key购买 nike

<html>
<head>
<style type="text/css">
.step_box {
border: 1.0px solid rgb(204, 204, 204);
border-radius: 10.0px 10.0px 10.0px 10.0px;
}
.step_box:hover{
background: rgb(184, 225, 252);
}
.selected {
background-color : #fff000;
}
</style>
<script src="http://code.jquery.com/jquery-1.7.2.js"></script>
<script type="text/javascript">
$('.step_wrapper').on('click','.step_box',function () {
$('.step_box').removeClass('selected');
$(this).addClass('selected')
});
</script>
</head>
<body>
<div class="step_wrapper">
<div class="step_box" onclick="show('Page1');"> <span>Content of page 1</span></div>
<div class="step_box" onclick="show('Page2');"> <span>Content of page 2</span></div>
<div class="step_box" onclick="show('Page3');"> <span>Content of page 3</span></div>
</div>
</body>
</html>

现在我在一个父 div 中有 3 个子 div。现在 step_box div 在悬停时显示背景色。然而;在 onclick 方法之后,我希望 stepbox div 保持背景颜色为“.selected”的样式。这样它会突出显示用户点击的 div。

有什么建议吗?

有效 on this fiddle但是当我在浏览器上加载它时,我是否正确地将 jquery 链接到 html?

如果有关于如何执行此操作的任何其他建议,我愿意接受建议,谢谢!

最佳答案

这是我的修订版:我在您的代码中添加了 .ready() 函数..

<html>
<head>
<style type="text/css">
.step_box {
border: 1.0px solid rgb(204, 204, 204);
border-radius: 10.0px 10.0px 10.0px 10.0px;
}
.step_box:hover, #selected_step_box, .QuickStartLong:hover {
background: rgb(184, 225, 252);
}
.selected {
background-color : #fff000;
}
</style>
<script src="http://code.jquery.com/jquery-1.7.2.js"></script>
<script type="text/javascript">
$( document ).ready( function(){
$('.step_wrapper').on('click','.step_box',function () {
$('.step_box').removeClass('selected');
$(this).addClass('selected')
});
});
</script>
</head>
<body>
<div class="step_wrapper">
<div class="step_box" > <span>Content of page 1</span></div>
<div class="step_box" > <span>Content of page 2</span></div>
<div class="step_box" > <span>Content of page 3</span></div>
</div>
</body>
</html>

试试这个方法 - version 2

CSS

.selected {
background-color : #fff000;
}

js

$('.step_wrapper').on('click','.step_box',function () {
$('.step_box').removeClass('selected');
$(this).addClass('selected')
});

试试这个 Fiddle :

.step_box:hover, #selected_step_box, .QuickStartLong:hover {
background-color: rgb(184, 225, 252) !important;
}

如您所见..只需在您的 css 中添加 !important.. 以防止您的 hover background-color 样式被忽略..

关于javascript - 如何在 onclick 方法后更改 div 的 CSS 样式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19352285/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com