所以在最近两个小时左右,我一直试图执行一段代码,到目前为止,除了一个关键组件外,一切都正常。
在'标题。菜单上'点击'导航'应该向下滑动并显示所有链接。我还希望'.menu'类在'导航'关闭时将其背景设置为'#3D3D3D',然后转换为背景'whitesmoke'。
我一直在'.slideToggle'的处理程序上尝试'addClass'和'removeClass'。
$( 'header .menu a' ).click( function() {
$( 'header nav' ).slideToggle( 'fast', function() {
console.log('Toggle works');
});
});
如果这是一个愚蠢的问题,我很抱歉。我的jQuery经验有限,我很想向你们学习。这是js,css和html的Fiddle。
干杯!
答案 0 :(得分:0)
在这里,您只需要使用变量检查滑块是否打开:http://jsfiddle.net/68zNp/12/
var opened=false;
// Code for header button -- menu.
$( 'header .menu a' ).mouseenter( function() {
console.log("Menu anchor entered");
$( 'header .menu' ).css('background', '#3D3D3D');
$( 'header .menu a' ).css('color', '#F8F7F7');
}).mouseleave( function() {
if(!opened){
console.log("'Menu anchor' left");
$( 'header .menu' ).css('background', 'whitesmoke');
$( 'header .menu a').css('color', '#3D3D3D');
}
});
// Header toggle code
$( 'header .menu a' ).click( function() {
console.log('Ouch, you clicked me!');
if(!opened){
opened=true;
}
else{
opened=false;
}
$( 'header nav' ).slideToggle( 'fast', function() {
console.log('Toggle works');
});
});
// Code for header button -- down.
$( 'header .down a' ).mouseenter( function() {
console.log("'Chevron down' entered");
$( 'header .down' ).css('background', '#FF8B59');
$( 'header .down a' ).css('color', '#F8F7F7');
}).mouseleave( function() {
console.log("'Chevron down' left");
$( 'header .down' ).css('background', 'whitesmoke');
$( 'header .down a').css('color', '#3D3D3D');
});