Я работаю над проектом и застрял на вкладках. Независимо от того, что я делаю, страница прокручивается, когда я нажимаю вкладку. Это мой HTML:Как предотвратить автоматическую прокрутку при нажатии вкладки
<ul class="list">
<li class="tab1 active">
<i class="fa fa-external-link"></i>
<a href="#quick-reports" class="tab">Quick Reports</a>
</li>
<li class="tab1">
<i class="fa fa-star-o"></i>
<a href="#my-folders" class="tab">My Folders</a>
</li>
<li class="tab1">
<i class="fa fa-folder-open-o"></i>
<a href="#my-team-folders" class="tab">My Team Folders</a>
</li>
<li class="tab1">
<i class="fa fa-files-o"></i>
<a href="#public-folders" class="tab">Public Folders</a>
</li>
</ul>
var open_tab = function() {
$('.tab1').each(function (i, tab) {
UTILS.addEvent(tab, 'click', function() {
$('.list li.active').removeClass('active');
$(this).addClass('active');
$('.active-panel').removeClass('active-panel');
var target_panel_selector = $(this).find('a').attr('href');
$(target_panel_selector).addClass('active-panel');
window.location.hash = target_panel_selector ;
});
});
};
И стиль .active-panel
является display: block
. Я пытался использовать:
e.preventDefault();
или
tab.find('a').on('click', function(e){
alert("finally!!");
e.preventDefault();
});
и другой материал, который я нашел в Интернете, но Неа, не работает.
ли в 'предупреждение()' появится в вашем последнем примере JS? Теоретически это должно было сработать. –
не доходить до тревоги. – Moran
Попробуйте '$ (tab) .find ('a') ....' –