首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >单击元素时切换CSS样式

单击元素时切换CSS样式
EN

Stack Overflow用户
提问于 2012-12-11 00:20:26
回答 4查看 315关注 0票数 2

如果这个问题被问了很多次,我很抱歉。我目前在一个网站上工作,将有一个自定义画廊。在现在所有需要坚持的事情中,它是画廊页面指示器。

在此页面上,左侧部分将由一个“画廊”组成,每个“页面”显示6个画廊。http://www.ct-social.com/ctsdev/aff/news-and-events/

画廊上方是小蓝点,它们将用作画廊指示器。创建图库指示器的代码如下:

代码语言:javascript
复制
    <?php for ($i=0; $i < $n2; $i++): ?>
    <div class="event-gallery-unselected"></div>
    <?php endfor; ?>

加载后,我希望最左边的点被赋予一个不同的样式,这是归因于class=“事件画廊选择”。在单击任何其他点(当前选定内容除外)时,当前选定的点需要恢复为"event-gallery-unselected“,并且单击的点显示为"event-gallery- selected”

我对PHP比较陌生,对JavaScript和JQuery也很陌生。如果你使用这两种语言中的任何一种作为例子,你能详细解释一下吗?非常感谢你的帮助。

更新代码: CSS

代码语言:javascript
复制
.event-gallery.selected {
position: relative; 
top: -0.7em;  
background: white;
background-color: #1e93bb;
width: 20px;
height: 20px;
margin: 7px;
border-radius: 50%; 
}
.event-gallery {    
position: relative; 
top: -1.1em;  
background: white;
background-color: #63c5e7;
width: 15px;
height: 15px;
border-radius: 50%;
margin: 7px;
float: right;
cursor: pointer;
}

更新的代码JS

代码语言:javascript
复制
<script type="text/javascript">
jQuery(document).ready(function($){
    $(".event-gallery").click(function() {
        $(this).addClass('selected').siblings().removeClass('selected');
    });
});
</script>

我刚把它修好。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2012-12-11 00:23:25

我建议在你所有的图库div元素上都有一个类。这将允许维护常见的样式,还允许您只有1个单击处理程序。然后,您可以拥有一个单独的selected类,您可以根据需要进行切换。试试这个:

代码语言:javascript
复制
<?php for ($i = 0; $i < $n2; $i++): ?>
    <div class="event-gallery"></div>
<?php endfor; ?>
代码语言:javascript
复制
.event-gallery { 
    color: #000; /* default styling ... */
    padding: 5px;
}
.event-gallery.selected { 
    color: #FFF; /* selected item styling ... */
    background-color: #C00;
}
代码语言:javascript
复制
$(".event-gallery").click(function() {
    $(this).addClass('selected').siblings().removeClass('selected');
});
票数 4
EN

Stack Overflow用户

发布于 2012-12-11 00:24:26

像这样使用jQuery:

代码语言:javascript
复制
$('divid').click(function(){
    $('divid').css('background-image', 'pic2.jpeg');
});

例如

票数 0
EN

Stack Overflow用户

发布于 2012-12-11 00:25:40

如果您有一组元素:

代码语言:javascript
复制
<div class="wrapper">
    <div class="item"></div>
    <div class="item"></div>
    <div class="item"></div>
    <div class="item"></div>
</div>

我通常是这样处理的:

代码语言:javascript
复制
var $items = $('#wrapper .item'); 
$('.item').click(function(){
    $items.removeClass('active'); // 'reset' the active links
    $(this).addClass('active'); // apply the active class to the clicked item
})
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13804856

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档