Jquery 重置CSS背景图像
我正在尝试使用以下JQUERY创建手风琴类型菜单:Jquery 重置CSS背景图像,jquery,css,Jquery,Css,我正在尝试使用以下JQUERY创建手风琴类型菜单: function initMenu() { $('#menu ul').hide(); $('#menu li a').click( function() { $(this).next().slideToggle('normal'); $(this).css("background", "url(customnav_selected.
function initMenu() {
$('#menu ul').hide();
$('#menu li a').click(
function() {
$(this).next().slideToggle('normal');
$(this).css("background", "url(customnav_selected.png) top right");
}
);
}
$(document).ready(function() {initMenu();});
这在某种程度上起作用,当我单击菜单链接时,它会展开,菜单标题背景也会改变
但是,当我第二次单击它以折叠菜单时,我希望它能重新更改
有人能帮忙吗?而不是这个:
$(this).css("background", "url(customnav_selected.png) top right");
将该样式放入CSS类中,并使用而不是,例如:
因此,单击处理程序变为:
$('#menu li a').click(function() {
$(this).next().slideToggle('normal');
$(this).toggleClass("selected");
});
风格:
<style>
.selected {background: url(customnav_selected.png) top right}
</style>
.selected{background:url(customnav_selected.png)右上角}
而不是这个:
$(this).css("background", "url(customnav_selected.png) top right");
将该样式放入CSS类中,并使用而不是,例如:
因此,单击处理程序变为:
$('#menu li a').click(function() {
$(this).next().slideToggle('normal');
$(this).toggleClass("selected");
});
风格:
<style>
.selected {background: url(customnav_selected.png) top right}
</style>
.selected{background:url(customnav_selected.png)右上角}
将背景图像设置为无(或初始值)
我发现直接将类设置为特定的html元素比css属性更容易,然后添加/删除这些类。将背景图像设置为无(或初始值)
我发现直接将类设置为特定的html元素比css属性更容易,然后添加/删除这些类。将背景样式设置为空字符串会将其还原为样式表中的样式。这假设默认样式来自样式表,如果不是,则必须手动重置它。将背景样式设置为空字符串应将其还原为从样式表中获得的样式。这假设默认样式来自样式表,如果不是,你必须手动重置它。这完全是完美的-如果我只知道jQuery稍微好一点。@ Dhumperson,如果它符合你的要求,请考虑接受这个答案。这是完美的-如果我只知道jQuery稍微好一点的话。@ Dhumperson,如果它符合你的要求,请接受这个答案。