Прокрутка div по ID - PullRequest
       31

Прокрутка div по ID

0 голосов
/ 08 июля 2011

У меня есть HTML-страница с этой структурой.

<div class="scrollBoxYe">
<table class="grid">
<tr><td class="wd0"><div id="20110701" class="lcday"><div class="lcleft">Fri 01</div><div class="lcmid">The Sacred Heart of Jesus, solemnity&nbsp;-&nbsp;<a href="#" onclick="window.open('http://evangelizo.org/www/popup-saints.php?language=AM&id=10309&fd=0', '', 'width=500,height=450,top=120,left=120,scrollbars=yes')">St. Gal, Bishop (c. 489-553)</a>,&nbsp;&nbsp;<a href="#" onclick="window.open('http://evangelizo.org/www/popup-saints.php?language=AM&id=10480&fd=0', '', 'width=500,height=450,top=120,left=120,scrollbars=yes')">Bl. Antonio Rosmini, Priest, Founder of the Institute of Charity (1797-1855)</a></div><div class="lcright">Jul</div></div></td>
</tr>
<tr><td class="we0"><div id="20110702" class="lcday"><div class="lcleft">Sat 02</div><div class="lcmid">Immaculate Heart of Mary - Memorial&nbsp;-&nbsp;<a href="#" onclick="window.open('http://evangelizo.org/www/popup-saints.php?language=AM&id=9906&fd=0', '', 'width=500,height=450,top=120,left=120,scrollbars=yes')">St. Bernardino Realino, Priest (1530-1616)</a></div><div class="lcright">Jul</div></div></td>
</tr>
<tr><td class="we0"><div id="20110703" class="lcday"><div class="lcleft">Sun 03</div><div class="lcmid"><a href="#" onclick="window.open('http://evangelizo.org/www/popup-saints.php?language=AM&id=9907&fd=0', '', 'width=500,height=450,top=120,left=120,scrollbars=yes')">St. Thomas, Apostle -Feast</a></div><div class="lcright">Jul</div></div></td>
</tr>
</table>
</div>
<script type="text/javascript">
    ScrollCalendar();
</script>

Функция ScrollCalendar должна прокручиваться до идентификатора div, например, 20110701, 20110702, 20110703.

function ScrollCalendar() {
    var d = new Date();
    calrow = d.formatDate("Ymd");
    document.write (calrow);
    var offscroll = window.parent.document.getElementById(calrow).offsetTop;
    document.write (offscroll);
    window.parent.document.getElementById("scrollBoxYe").scrollTop = offscroll;
}

В функции над идентификатором div, который получается с переменной calrow, определяется правильно,Однако в коде нет правильного смещения (offscroll) для прокрутки div (scrollBoxYe).Это мои вопросы:

  1. Если Кэлроу прав (действительно показывает 20110701).Будет ли getelementby ID интерпретировать calrow как идентификатор строки для извлечения элемента?Должен ли я сделать Calrow в строку в первую очередь?Какая функция подходит для этого?
  2. Неправильно ли искать элемент с помощью window.parent.document, если вся информация о странице находится в одном документе?Должен ли код сказать вместо document.getElementbyID ("scrollBoxYe"). ScrollTop?
  3. Есть ли лучший способ прокрутки scrollBoxYe с помощью переменной calrow?

Спасибо.

1 Ответ

1 голос
/ 08 июля 2011

Есть лучший способ прокрутки: element.scrollIntoView ()

http://msdn.microsoft.com/en-us/library/ms536730(v=vs.85).aspx

Это не является частью стандарта, но согласно это поддерживается всеми браузерами.

...