Форум программистов, компьютерный форум, киберфорум
JavaScript
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.64/11: Рейтинг темы: голосов - 11, средняя оценка - 4.64
 Аватар для lolopolosko
1354 / 315 / 6
Регистрация: 21.11.2009
Сообщений: 992

Вывод сообщения при достижении определенной области

20.07.2012, 22:00. Показов 2435. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть страница с текстом...
Надо сделать так, чтобы когда мы к примеру прокручиваем ее до определенного элемента (неважно рисунок, ссылка или текст), нам выводилось обычное консольное сообщения
JavaScript
1
console.log("Test")
, при этом элементов таких может быть куча
Как это реализовать? Возможно есть события определенные?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
20.07.2012, 22:00
Ответы с готовыми решениями:

Автоперенос строки,при достижении определенной ширины
Как сделать автоперенос строки,по определенному символу,или если размер div достиг заданной ширины? (всплывающая подсказка) ...

Как при достижении определенной даты стереть одну из таблиц базы данных?
Имеется база данных с именем 'Тренер', в этой базе есть таблца 'Звери', мне надо после достижения определенной даты, стереть таблицу...

при достижении шариком границы области происходит изменение направления движения по закону отражения,
Ребята!!!помогите..нужно программу сделать в delphi: дана прямоугольная область,в которой происходит движение шариков.каждый шарик имеет...

4
супермизантроп
Эксперт JS
3941 / 2979 / 692
Регистрация: 18.04.2012
Сообщений: 8,629
20.07.2012, 23:56
На каждый интересующий вас элемент страницы надо повесить уникальный id и по загрузке страницы определить для каждого его абсолютную координату top. Сделать некий массив значений этих координат.

Ну и потом на onscroll (это и будет искомое вами "определённое событие") тега <BODY> вешаете функцию, коя будет отслеживать значение document.body.scrollTop (ну, то есть на сколько пикселов вниз-вверх отъехал движок вертикального скроллбара). Как только достиг движок очередного значения в массиве - в лог записываете нужное вам сообщение.
0
 Аватар для lolopolosko
1354 / 315 / 6
Регистрация: 21.11.2009
Сообщений: 992
21.07.2012, 01:00  [ТС]
да.. но тогда придется сделать кучу условий для проверки значений, ведь при прокрутке скролом координаты меняются не попиксельно... а это плохо
0
супермизантроп
Эксперт JS
3941 / 2979 / 692
Регистрация: 18.04.2012
Сообщений: 8,629
21.07.2012, 01:08
Остановился скролл, значение в пикселах получено - перебираются элементы массива по очереди, которые меньше или равны значению текущего body.scrollTop и выводятся сообщения в лог, а эти элементы из массива удаляются. И т.д...
А условие - оно будет одно:
if (document.body.scrollTop >= arr [j]) {/*сообщение в лог и удаление этого элемента из массива*/}
else {return}
0
Эксперт JSЭксперт HTML/CSS
2436 / 1115 / 312
Регистрация: 23.06.2011
Сообщений: 3,529
21.07.2012, 10:45
Как возможная версия.
Теперь надо решать как делать проверку, здесь есть варианты.
Не работает в ИЕ, под него отдельно нужно.
HTML5
1
2
3
4
5
6
7
8
9
10
11
<div id="mnb" style="position:fixed; font-size:222%; color:red;">text</div>
<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>
<div class="scrol">text1</div>
<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>
<div class="scrol">text2</div>
<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>
<div class="scrol">text3</div>
<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>
<div class="scrol">text4</div>
<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>
<div class="scrol">text5</div>
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
(function(){
var d, mass=[], len;
d=document;
 
onload=function(){
var m, k;
m=d.getElementsByClassName("scrol");
k=len=m.length;
while(k--){mass.push(m[k].offsetTop);};
//alert(len+'\n'+mass);
d.body.onscroll=f1;
 };
 
function f1(){
var s=d.documentElement.scrollTop||d.body.scrollTop;
 
document.getElementById("mnb").innerHTML=s;
 
 };
 
 
 })();


Цитата Сообщение от kalabuni Посмотреть сообщение
На каждый интересующий вас элемент страницы надо повесить уникальный id
В этом случае будем иметь головную боль при изменении количества блоков, а если какой умелец и функцию совсем криво напишет, то могут быть проблемы и при смене мест блоков.
Завернуть нужный блок в ДИВ с классом гораздо проще.
Разумеется всё зависит от реального кода.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
21.07.2012, 10:45
Помогаю со студенческими работами здесь

Перенос строки в Memo1 при достижении определённой длины строки
Здравствуйте. помогите. забуксовал. как правильно перенести строку в Memo1 при достижении определённой длины строки, измеряя её в...

Вывод определенной области формы на печать
Здравствуйте, есть проблема. Создана в Access2003 база даных регистрации кореспонденции: таблица и форма. Требуется вывод на печать через...

вывод определенной области сайта в iframe
Здравствуйте. Задача: вывести в iframe(альтернатива) содержимое сайта в определенной области. Не просто ограничить по ширине и высоте, а...

Вывод сообщения о отсутствии прав доступа к определённой странице
Здравствуйте. Настроил веб-сайт таким образом, чтобы некоторые пользователи не имели доступ ко всем страницам. Как сделать так, чтобы...

DirectShow и вывод видео определённой области с вебкамеры
Задача такая: нужно выводить с вебкамеры вертикальное видео с соотношением сторон 3:4 на форму. Как вы понимаете, вебкамера выводит...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru