ScrollIntoView
От: der Igel Россия  
Дата: 08.01.04 10:14
Оценка:
Hello, All!

Кто-нибудь реализовывал ScrollIntoView для Opera?
Posted via RSDN NNTP Server 1.8 beta
Re: ScrollIntoView
От: uzzy Россия  
Дата: 08.01.04 10:40
Оценка:
Здравствуйте, der Igel, Вы писали:

DI>Hello, All!


DI>Кто-нибудь реализовывал ScrollIntoView для Opera?

Что имеется в виду под ScrollIntoView?
Мысль. В сортире лучше быть пользователем, чем админом... (с) Почта
Re[2]: ScrollIntoView
От: der Igel Россия  
Дата: 08.01.04 11:07
Оценка:
Hello, uzzy!

DI>> Кто-нибудь реализовывал ScrollIntoView для Opera?

u> Что имеется в виду под ScrollIntoView?

Метод объектов, при его вызове окно скролируется к этому элементу.
Вообще, IE specific, но реализовано и в Mozilla, ибо нужная и полезная вещь.
Posted via RSDN NNTP Server 1.8 beta
Re[3]: ScrollIntoView
От: uzzy Россия  
Дата: 08.01.04 12:31
Оценка:
Здравствуйте, der Igel, Вы писали:

в порядке идеи:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<meta name=vs_targetSchema content="HTML 4.0">
<script language="javascript">
   function doUzzyScroll (sID) {
      obj = document.getElementById (sID);
      if (obj == null)
         return;
         
      var otxt = document.createElement ("INPUT");
      try {
         obj.insertBefore (otxt, null);
         otxt.focus ();
         obj.removeChild (otxt);
      } catch (e) { }
      obj.focus ();
      obj.blur ();
   };
</script>
</head>
<body>
<button type=button onclick='doUzzyScroll ("toScroll1");' ID="Button1"> Scroll to to input</button>
<button type=button onclick='doUzzyScroll ("toScroll2");' ID="Button2"> Scroll to last row</button>
<div style="width:100%; height: 100px; overflow: auto; border: 1px #000000 solid;">
<table border="1">
   <tr><td>1</td></tr>
   <tr><td>2</td></tr>
   <tr><td>3</td></tr>
   <tr><td>4</td></tr>
   <tr><td>5</td></tr>
   <tr><td>6</td></tr>
   <tr><td>7</td></tr>
   <tr><td>8</td></tr>
   <tr><td>9</td></tr>
   <tr><td>10</td></tr>
   <tr><td>11</td></tr>
   <tr><td>12</td></tr>
   <tr><td>13</td></tr>
   <tr><td>14</td></tr>
   <tr><td>15</td></tr>
   <tr><td>16</td></tr>
   <tr><td>17</td></tr>
   <tr><td>18</td></tr>
   <tr><td id="toScroll2">19</td></tr>
   <tr><td>20</td></tr>
   <tr><td>21</td></tr>
   <tr><td>22</td></tr>
   <tr><td>23</td></tr>
   <tr><td>24</td></tr>
   <tr><td>25</td></tr>
   <tr><td>26</td></tr>
   <tr><td>27</td></tr>
   <tr><td>28</td></tr>
   <tr><td>29</td></tr>
   <tr><td>30</td></tr>
</table>
<input type="text" id="toScroll1" value="asdasd" NAME="toScroll1">
<button type=button onclick='doUzzyScroll ("Button1");' ID="Button3">Scroll to upper buttons</button>
</div>
</body>
</html>


P.S. вроде бы работает под IE 6.0, Opera 7.2. Под Mozilla работать не будет.
Мысль. В сортире лучше быть пользователем, чем админом... (с) Почта
Re: ScrollIntoView
От: Sinclair Россия https://github.com/evilguest/
Дата: 08.01.04 12:38
Оценка:
Здравствуйте, der Igel, Вы писали:

DI>Hello, All!


DI>Кто-нибудь реализовывал ScrollIntoView для Opera?

А на ней можно динамически приделать якорь с нужным именем к нужному месту и сделать на него navigate?
... << RSDN@Home 1.1.2 beta 2 >>
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
Re[2]: ScrollIntoView
От: der Igel Россия  
Дата: 08.01.04 13:22
Оценка: 15 (1)
Hello, Sinclair!

DI>> Кто-нибудь реализовывал ScrollIntoView для Opera?

S> А на ней можно динамически приделать якорь с нужным именем к нужному
S> месту и сделать на него navigate?

Это конечно да, но хотелось без всяких якорей.
Вот, накидал
function scrollIntoView(el)
{
  var coords = {x: 0, y: 0};
  do
  {
    coords.x += el.offsetLeft;
    coords.y += el.offsetTop;
  }
  while ((el = el.offsetParent));
  window.scrollTo (coords.x, coords.y);
}
Posted via RSDN NNTP Server 1.8 beta
Re: ScrollIntoView
От: marx paul Германия Провести онлайн-опрос
Дата: 08.01.04 16:33
Оценка: 47 (3)
Здравствуйте, der Igel, Вы писали:

DI>Hello, All!


DI>Кто-нибудь реализовывал ScrollIntoView для Opera?


честно говоря не совсем понял, что есть ScrollIntoView,
но для того, чтобы заставить браузер "приехать" к определенному контенту я обычно пользую во это:

getElementById("myContentElementId").focus();

....
<body ...>
.....
.....
<a id="myContentElementId"> например к ссылке </a>

...



после focus();
можно еще проскроллить пару пикселей — ну да это на вкус и на цвет ...


с ув.
Marx
Провести онлайн-опрос
Online-Umfrage erstellen
Re[2]: ScrollIntoView
От: King Oleg Украина http://kingoleg.livejournal.com
Дата: 12.05.04 10:23
Оценка:
Здравствуйте, marx paul, Вы писали:

MP>Здравствуйте, der Igel, Вы писали:


MP>для того, чтобы заставить браузер "приехать" к определенному контенту я обычно пользую во это:


MP>
MP>getElementById("myContentElementId").focus();
MP>....
MP><body ...>
MP>.....
MP>.....
MP><a id="myContentElementId"> например к ссылке </a>
MP>...
MP>


Не работает:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
<head>
    <title>Untitled</title>
</head>

<body>
<script>
function scroll() {
var anhor = document.getElementById("reply_1");
anhor.focus();
return false;
}
</script>
<a href="#" onClick="return scroll();">Scroll</a>
1<br><!-- Добавьте, сколько надо-->
<br>
<a name="reply_1" id="reply_1"></a>
123

</body>
</html>

Я так думаю, что это из-за того, что якорь не видимый. Как лечить?
King Oleg
*Читайте DOC'и, они rules*
Re[3]: ScrollIntoView
От: King Oleg Украина http://kingoleg.livejournal.com
Дата: 12.05.04 10:28
Оценка:
Здравствуйте, King Oleg, Вы писали:

KO>Не работает:

KO>
KO><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

KO><html>
KO><head>
KO>    <title>Untitled</title>
KO></head>

KO><body>
KO><script>
KO>function scroll() {
KO>var anhor = document.getElementById("reply_1");
KO>anhor.focus();
KO>return false;
KO>}
KO></script>
KO><a href="#" onClick="return scroll();">Scroll</a>
KO>1<br><!-- Добавьте, сколько надо-->
KO><br>
KO><a name="reply_1" id="reply_1" href=""></a>
KO>123

KO></body>
KO></html>
KO>

KO>Я так думаю, что это из-за того, что якорь не видимый. Как лечить?
Придумал
King Oleg
*Читайте DOC'и, они rules*
Re[4]: ScrollIntoView
От: King Oleg Украина http://kingoleg.livejournal.com
Дата: 12.05.04 12:08
Оценка:
Здравствуйте, King Oleg, Вы писали:

KO>>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
<head>
    <title>Untitled</title>
</head>

<body>
1<br><!-- Много таких строк-->
<br>
<a name="reply_1" id="reply_1" href=""></a>
123
<script>
var anhor = document.getElementById("reply_1");
setTimeout('anhor.focus()', 100);;
</script>

</body>
</html>

KO>>

Обновление для того, чтобы сделать видимым елемент сразу после загрузки страаницы
King Oleg
*Читайте DOC'и, они rules*
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.