我正在尝试找出正确的方法或更好的方法,在点击元素时滑出导出块的干净而精确的方法,然后在单击相同元素时隐藏导航块。这就是我到目前为止所做的:
$('.menu').click(function(e) {
e.preventDefault();
$('#pic-slideNav').css('display', 'block');
if ($.browser.webkit) {
$('#pic-wrapper').css('-webkit-transform', 'translate(250px,0px)');
console.log('This is Chrome');
} else {
$('#pic-wrapper').css('transform', 'translate(250px,0px)');
console.log('This is Everything else');
}
});
我也在检查浏览器类型,以便我可以传递正确的css规则。
更新了适合我的代码:
$('.menu-icon').click(function(e) {
e.preventDefault();
if($('#pic-slideNav').is(':visible')) {
$('#pic-slideNav').hide();
if ($.browser.webkit) {
$('#pic-wrapper').css('-webkit-transform', 'translate(0px,0px)');
console.log('This is Chrome');
} else {
$('#pic-wrapper').css('transform', 'translate(0px,0px)');
console.log('This is Everything else');
}
} else {
$('#pic-slideNav').show();
if ($.browser.webkit) {
$('#pic-wrapper').css('-webkit-transform', 'translate(250px,0px)');
console.log('This is Chrome');
} else {
$('#pic-wrapper').css('transform', 'translate(250px,0px)');
console.log('This is Everything else');
}
}
});
我确信有一种更清洁的方法可以达到这个目的但是有效。
答案 0 :(得分:2)
var i=0;
jQuery("#btn").click(function() {
var t = (Math.pow(-1,i))*160;
jQuery("#id").stop(true, false).animate({
left: t
}, 500);
i = (i>10) ? 0 : (i+1);
});