我有以下代码:
<script type="text/javascript">
function shownavall()
{
$('#shownavall').slideToggle('slow', function() {
$('.otherlink').toggle(function(){
$(this).css('background-position', '0px 0px');
}, function(){
$(this).css('background-position', '25px 0px');
});
});
}
</script>
当我尝试调用该函数时,该函数在slidetoggle
部分上起作用。但是不会更改css
的{{1}}我想知道为什么?以及如何解决它?
我尝试使用条件语句来完成它,这是我的代码:(此代码根本不起作用!)
.otherlink
我100%确定错误在我的Jquery代码中。所以请不要询问html或css。
答案 0 :(得分:0)
我认为在CSS中“background-position”是正确的而不是“backgroundposition”。 背景位置也会改变背景的位置而不是元素本身的位置,所以你必须使用位置属性。
<script type="text/javascript">
function shownavall()
{
$('#shownavall').slideToggle('slow', function() {
$('.otherlink').toggle(function(){
$(this).css({'position':'absolute','left':'100px','top':'150px'});
}, function(){
$(this).css({'position':'absolute','left':'0px','top':'0px'});
});
});
}
</script>
答案 1 :(得分:0)
function shownavall()
{
$('#shownavall').slideToggle('slow', function() {
if ($('.otherlink').css('background-position') == '25px 0px')
{
$('.otherlink').css('background-position', '0px 0px');
}
else
{
$('.otherlink').css('background-position', '25px 0px');
}
});
}