0

onClick で div (マップ) を表示する次の js があります。div が表示されると、ページの下部にいる場合でも、ブラウザー ウィンドウが垂直方向にスクロールします。この動作を防ぐ方法は?

HTML

<a href="#" class="toggle-next-div">Map</a>
<div class="slidingDiv">
<strong>content</strong>
<a href="#" class="toggle-next-div">hide</a>
</div>

JS

$(document).ready(function(){
$(".slidingDiv").hide();
$('.toggle-next-div').click(function(){
    $(this).next().slideToggle();
});
});
4

2 に答える 2

2

.preventDefault()またはを使用できますreturn false

$('.toggle-next-div').click(function(e){
    $(this).next().slideToggle();
    e.preventDefault();
});

// OR //

$('.toggle-next-div').click(function(){
    $(this).next().slideToggle();
    return false;
});

イベントの伝播に依存する関数がある場合は、最初の解決策に頼る必要があることに注意してください。return false;イベントの伝播も停止します。

于 2013-09-28T16:21:42.147 に答える
0

aはあなたを「#」にリダイレクトするリンク要素です->それはトップにスクロールします:)。これを試してください:

$('.toggle-next-div').click(function(event){
    event.preventDefault();
    $(this).next().slideToggle();
});
于 2013-09-28T16:17:01.907 に答える