|
Позиционирование в Поле HTML документа | ☑ | ||
---|---|---|---|---|
0
Geroy
09.10.20
✎
11:37
|
Как программно сменить позиционирование в поле HTML.
В поле html хранится переписка, необходимо при открытии формы сразу показывать последний комментарий, исключить тем самым необходимость прокрутки поля. |
|||
1
Garykom
гуру
09.10.20
✎
11:49
|
||||
2
Garykom
гуру
09.10.20
✎
11:50
|
(1)+ Хотя в твоем случае проще сразу до тега в котором комментарий крутить
|
|||
3
Йохохо
09.10.20
✎
11:55
|
вроде раньше дня этого anchor ставится
|
|||
4
Geroy
09.10.20
✎
11:58
|
(1) скорее всего нужно scrollTo
(3) есть прмер? |
|||
5
Garykom
гуру
09.10.20
✎
12:02
|
(4) скорее elem.scrollIntoView()
|
|||
6
Йохохо
09.10.20
✎
12:14
|
(4) посмотри на хреф под (4), id=860459#3 вот #3 это якорь, только вода утекла и теперь по другому называется
|
|||
7
PloAl
09.10.20
✎
12:14
|
window.scrollTo(0, document.body.scrollHeight);
Если переписка небольшая все открывается моментально. Но если +- от 1000 да еще и с картинками отображение и позиционирование будет тупить пару тройку секунд, дальше больше. |
|||
8
Geroy
09.10.20
✎
13:57
|
(2) как найти координаты?
|
|||
9
acht
09.10.20
✎
14:11
|
(8) ... an optional fragment url component preceded by a hash (#). The fragment contains a fragment identifier providing direction to a secondary resource, such as a section heading in an article identified by the remainder of the URI. When the primary resource is an HTML document, the fragment is often an id attribute of a specific element, and web browsers will scroll this element into view.
|
|||
10
Йохохо
09.10.20
✎
14:26
|
(9) =)
(8) в общем тебе надо вот такую хрень воткнуть перед последней темой <a href="#8" style="text-decoration:none;" class="interlink" data-rel="#8">8</a> и АдресHTML = "http://www.v8.1c.ru/foo#8"; код стыбзен с этой страницы) |
|||
11
PloAl
09.10.20
✎
15:24
|
(10) Если в поле HTML содержится строка с текстом html вместо ссылки на локальный файл или внешний ресурс то перейти по якорю не получиться.
|
|||
12
Geroy
13.10.20
✎
12:07
|
решение:
Элементы.ТекстHTML.Документ.body.scrollTop = Позиция; |
|||
13
acht
13.10.20
✎
12:38
|
(12) Тогда уж без вычисления позиции:
Элементы.Поле1.Документ.getElementById("qqq").scrollIntoView(Истина); |
|||
14
Geroy
14.10.20
✎
08:34
|
(13) ну а "qqq" это разве не позиция (элемент) до которого нужно прокрутить ?
|
|||
15
acht
14.10.20
✎
08:44
|
(14) Ты хранишь идентификатор элемента в переменной с именем "Позиция"?
body.scrollTop это вообще-то число: https://drafts.csswg.org/cssom-view/#dom-element-scrolltop |
|||
16
Geroy
14.10.20
✎
12:28
|
(15) нет, тут число координата начала необходимого мне комментария
|
|||
17
acht
14.10.20
✎
12:33
|
(16) а "qqq" - идентификатор элемента, к которому осуществляется прокрутка
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |