Я создаю страницу с изображением вверху и меню ниже. Когда пользователь нажимает на 3 кнопки меню, изображение slideUp и страница прокручиваются вниз, поэтому меню находится в верхней части страницы, затем загорается правый .content div. SlideUp должен выполняться только в первый раз, когда пользователь нажимает кнопки.
Лучший подход к слайду и вкладкам с jQuery
Какой абсолютный лучший способ сделать это с помощью jQuery? (без плагинов)
мне нужно знать, как я не могу предотвратить это, чтобы исчезнуть на странице, которая уже видна, если я нажмите на ту же кнопку дважды?
Я использую отн вместо HREF, так как HREF сделал прыжок страницы, даже с возвращения ложной.
Это то, что я до сих пор:
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js"></script>
<script type="text/javascript">
$(function(){
imgVisible = true;
$('#mainmenu a').click(function(){
var $activeTab = $(this).attr('rel');
if(!imgVisible){
$('html:not(:animated),body:not(:animated)').animate({scrollTop:$('#mainmenu').offset().top-20},500);
$('.content').hide();
$($activeTab).fadeIn();
} else{
$('#imgholder').slideUp(500,function(){
imgVisible = false;
$('#mainmenu a[rel="'+$activeTab+'"]').click();
});
}
return false;
});
});
</script>
<div id="imgholder"><img src="image.jpg" /></div>
<div id="mainmenu">
<ul>
<li><a rel="#tab1"></a></li>
<li><a rel="#tab2"></a></li>
<li><a rel="#tab3"></a></li>
</ul>
</div>
<div id="container">
<div class="content" id="tab1">
content
</div>
<div class="content" id="tab2">
content
</div>
<div class="content" id="tab3">
content
</div>
</div>
Почему вы не хотите использовать плагины? – SLaks
2 причины. Я хочу научиться самому это делать. И немного переборщить, чтобы использовать плагины для чего-то столь же простого, как это. –
http://blog.qumsieh.ca/2009/10/27/building-jquery-tabs-that-open-close/ –