Нажав на ссылку, я перехожу на нижнюю часть страницы вместо того места, откуда я ее назвал. - PullRequest
0 голосов
/ 31 марта 2011

Как только я нажму на ссылку «Скрыть» ниже, моя страница перейдет к нижней части.Как я могу сделать так, чтобы он пошел в то место, откуда он открылся?

Мой код:

<li><a href="javascript:ReverseDisplay('basic2')">How do I maximize battery life?</a></li>

<div id="basic2" style="display:none; background-color:#fff; padding:5px; margin-left: 11px;">
    <p>Wadfasfsafasfas</p>
    <a href="#" onclick="ReverseDisplay('basic2');">Hide</a></li>
    <div id="basic2" style="display:none; background-color:#fff; padding:5px; margin-left: 11px;">
    </div>
    <p>&nbsp;</p>
    <hr />
</div>

Функция:

function ReverseDisplay(d) {
    if(document.getElementById(d).style.display == "none")
    {
        document.getElementById(d).style.display = "block";
    }
    else
    {
        document.getElementById(d).style.display = "none";
    }
}

Ответы [ 2 ]

1 голос
/ 31 марта 2011

У вас есть дубликаты идентификаторов элементов "basic2"

Edit Я думаю, что вы ищете что-то вроде этого.Где «Скрыть» переключает родительский элемент:

<li><a href="javascript:ReverseDisplay('basic1')">How do I maximize battery life?</a></li>
<div id="basic1" style="display:none; background-color:#fff; padding:5px; margin-left: 11px;">
    <p>Wadfasfsafasfas</p>
    <a href="#" onclick="ReverseDisplay('basic1');">Hide</a></li>
    <p>&nbsp;</p>
    <hr />
</div>
<script>
function ReverseDisplay(d) {
if(document.getElementById(d).style.display == "none") { document.getElementById(d).style.display = "block"; }
else { document.getElementById(d).style.display = "none"; }
}
</script>
1 голос
/ 31 марта 2011

Всякий раз, когда у вас есть ссылка onClick (например, onclick="ReverseDisplay('basic2');", вы хотите убедиться, что она возвращает false.

Примерно так должно работать: onclick="ReverseDisplay('basic2');return false;"

...