Я создаю некоторые вкладки jquery, всякий раз, когда я нажимал на нее, она всегда прокручивается вверх,
вот мой html,
<div id="my_div">
<ul>
<li><a href="#tab_1">Tab-1</a></li>
<li><a href="#tab_2">Tab-2</a></li>
<li><a href="#tab_3">Tab-1</a></li>
</ul>
</div>
Я пробовал до сих пор,
$('#my_div a').click(function(e) {
e.preventDefault();
});
Это не помогло, что я делаю неправильно здесь. Пожалуйста помоги!
РЕДАКТИРОВАТЬ
<div id="tab_1" class="tab-content">
<p>tab 1 goes here..</p>
</div>
<div id="tab_2" class="tab-content">
<p>tab 2 goes here..</p>
</div>
$(document).ready(function(e) {
$('#my_div').createTabs();
});
Я не уверен, что jQuery делает за кулисами, но поведение браузера пинается, поэтому, когда у вас есть href С#, он прокручивает элемент на этой странице с идентификатором, который соответствует #.
Возможно, попробуйте:
$('#my_div a').click(function(e) {
return false;
});
Попробуйте обернуть свой код в готовом блоке doc:
$(function(){ // doc ready starts
$('#my_div').on('click', 'a', function(e) {
e.preventDefault();
});
});// doc ready ends
используйте синтаксис делегирования событий.