Javascript 通过onclick更改背景并阻止悬停
我有JS的问题,我自己解决不了这个问题。 我希望,如果我点击#footerblock,#footerblock的背景会发生变化,然后该页脚会失去“悬停效果”Javascript 通过onclick更改背景并阻止悬停,javascript,jquery,html,css,hover,Javascript,Jquery,Html,Css,Hover,我有JS的问题,我自己解决不了这个问题。 我希望,如果我点击#footerblock,#footerblock的背景会发生变化,然后该页脚会失去“悬停效果” /*我希望页脚仍然存在,但我希望页脚没有悬停效果*/ 我想我的css并不重要,但我必须在里面摆弄 我为我的英语感到抱歉您可以按如下所示操作。(注意:我假设您使用的是jQuery,因为它有标记) 基本上,我们所做的是,每当单击#footerblock时,我们都会向页脚添加/删除一个新类,并从中删除现有的悬停类。我们这样做是因为您的:ho
/*我希望页脚仍然存在,但我希望页脚没有悬停效果*/
我想我的css并不重要,但我必须在里面摆弄
我为我的英语感到抱歉您可以按如下所示操作。(注意:我假设您使用的是jQuery,因为它有标记) 基本上,我们所做的是,每当单击
#footerblock
时,我们都会向页脚添加/删除一个新类,并从中删除现有的悬停类。我们这样做是因为您的:hover
效果是用CSS编码的,就像。hover:hover
一样,因此删除hover
类将确保不会应用:hover
样式
此外,我们还将单击的块
类切换到页脚块
,以更改其背景色
jQuery:
$(document).ready(function () {
$('#footerblock').on('click', function() {
$('footer').toggleClass('clicked'); //toggling a new class on click to change background
$('footer').toggleClass('hover'); //toggling the hover class because your `:hover` pseudo is attached to it.
$(this).toggleClass('block_clicked'); //to add a custom style to the block when clicked.
});
});
.clicked{
background-color: blue;
}
#footerblock.block_clicked{
background-color: red;
}
CSS:
$(document).ready(function () {
$('#footerblock').on('click', function() {
$('footer').toggleClass('clicked'); //toggling a new class on click to change background
$('footer').toggleClass('hover'); //toggling the hover class because your `:hover` pseudo is attached to it.
$(this).toggleClass('block_clicked'); //to add a custom style to the block when clicked.
});
});
.clicked{
background-color: blue;
}
#footerblock.block_clicked{
background-color: red;
}
编辑(根据MLeFevre的评论更新):将css规则修改为#footerblock。block_单击以取消的使用!重要信息
这可能有助于:
也在第40行添加了这个css行
footer.hover.andClicked,
背景更改意味着只更改背景颜色,而不更改悬停效果或背景图像之类的位置。单击块时,背景变为蓝色,不会出现悬停效果。第二次单击时,它将返回到原始状态。关闭,但我希望#footerblock的背景发生更改您可以执行类似于
#footerblock.block的操作,而不是使用important@MLeFevre对该评论+1。是的,那会好得多。将在一分钟内更改:)@Harry脚本必须在JS中。您可以更改您的代码,以便我的编辑器可以正确阅读它。我的bowser说美元不是defined@DOCTYPEHTML:此脚本之前是否包含jQuery库?@DOCTYPEHTML:Check。写得有点匆忙,所以可能不是优化版本。