всплывающее окно при входе на сайт

Bicdibus

Участник
Регистрация
5 Мар 2010
Сообщения
497
Реакции
7
у кого есть скрипт вспливающего окна на яваскрипт, чтоб вставить в тело страницы и окно откривалось по центру, скриптов пересмотрел много, но они все открываются при клике по ссылке, также возможно чтоб окно всплывало после движения мышью, в програмировании на яваскрипт не расбираюсь, но в общем представление имею.
 
document.onmousemove = function() {
// Тут открываешь окно, например так:
openWindow();
};
 
лучше на window.onload, в противном случае при каждом движении мышью будет всплывать...

читаем....

у кого есть скрипт вспливающего окна на яваскрипт, чтоб вставить в тело страницы и окно откривалось по центру, скриптов пересмотрел много, но они все открываются при клике по ссылке, также возможно чтоб окно всплывало после движения мышью, в програмировании на яваскрипт не расбираюсь, но в общем представление имею.
 

также возможно чтоб окно всплывало

как возможное решение задачи "всплывающее окно при входе на сайт" ?
причем далеко не самое удачное, поскольку чем больше возить курсором по странице тем больше вылезет окон поверх друг друга.
в этом случае надо в openWindow удалять слушатель на событие, что бы этого не происходило.
onLoad в этом случае гораздо более простое и логичное решение.
 
как возможное решение задачи "всплывающее окно при входе на сайт" ?
причем далеко не самое удачное, поскольку чем больше возить курсором по странице тем больше вылезет окон поверх друг друга.
в этом случае надо в openWindow удалять слушатель на событие, что бы этого не происходило.
onLoad в этом случае гораздо более простое и логичное решение.


Как только окно открылось (jquery:(

function openWindow(){
alert("window was open");
}
$(document).ready(function(){
openWindow();
});

(или онлоад)
Сработает вне зависимости от взаимодействия пользователя со страницей! Если же необходимо чтобы когда человек работает со страницей вылезло окно, что сейчас очень популярно ввиду маркетинговых соображений, т.к. если сходу выдать окно пользователю, то он его просто закроет и даже не прочитает что там сказано, т.к. расценит это как рекламу (как popup).

Следовательно ЖЕЛАТЕЛЬНО и ЦЕЛЕСООБРАЗНЕЕ и ЛОГИЧНЕЕ все равно использовать событие движения мышью.
Также выше выражение неверно, относительно количества окон. В зависимости от того какой триггер мы будем использовать - будет разное количество вызовов. (см. демо внизу на страницах референсов)

mouseover - Для просмотра ссылки Войди или Зарегистрируйся
mousemove - Для просмотра ссылки Войди или Зарегистрируйся
mouseenter - Для просмотра ссылки Войди или Зарегистрируйся

И код не намного будет больше (jquery:(


function openWindow(){
document.onmousemove = null;
alert("window was open");
}
$(document).ready(function(){
document.onmousemove = function() {
openWindow();
};
});


Можно даже убрать документ реди и оставить:

function openWindow(){
document.onmousemove = null;
alert("window was open");
}
document.onmousemove = function() {
openWindow();
};


Итого - целая строка кода решает все проблемы и заставляет работать скрипт как надо.
И все будет ок. ;)
 
почему же не верно ...
в указаных примерах событие вешается на конкретный елемент, если событие повесить на body или document, то будет срабатывать при движении в любом месте страницы ибо event propagation.

document.onmousemove = null;

да, именно это я и подразумевал под "удалять слушатель на событие".
да, именно благодаря этому окна не будут плодиться.

теперь полевые испытания этого варианта - пользователь переходит по ссылке на сайт, либо вбивает ее, не важно, что происходит дальше ?
если он не умер до момента открытия страницы, то либо он подсознательно сдвинет курсор в сторону от контента, либо наоборот передвинет в рабочую область что-бы что-то сделать и тут хоп и окно.
то есть на стороне пользователя разницы особой не будет и будет раздражать точно также :)
разве что вешать на элемент tooltip, но это уже другая история...

ну а в виду маркетинговых соображений, нужную информацию лучше вывести красивым, привлекающим внимание блоком в изначально видимом регионе на главной странице, тогда даже есть шанс что ее кто-то прочитает :)
попап же любой будет вызывать неприятные чувства, поскольку отвлекает и заставляет делать лишние дейтвия что-бы его закрыть.
web 2.0 ... даже серьезные ошибки и алерты стараются отображать как можно более ненавязчиво :)
 
почему же не верно ...
в указаных примерах событие вешается на конкретный елемент, если событие повесить на body или document, то будет срабатывать при движении в любом месте страницы ибо event propagation.
да, именно это я и подразумевал под "удалять слушатель на событие".
да, именно благодаря этому окна не будут плодиться.

ну так не критично же. В чем ваш способ лучше?

теперь полевые испытания этого варианта - пользователь переходит по ссылке на сайт, либо вбивает ее, не важно, что происходит дальше ?
если он не умер до момента открытия страницы, то либо он подсознательно сдвинет курсор в сторону от контента, либо наоборот передвинет в рабочую область что-бы что-то сделать и тут хоп и окно.
то есть на стороне пользователя разницы особой не будет и будет раздражать точно также :)
разве что вешать на элемент tooltip, но это уже другая история...

Для этого есть setTimeout(); и плавное появление show('slow');

Полевые условия: если чувак открыл окно в новой вкладке и тупо забил - открыл - а там уже окно. А так, он открыл - там ничего нет - курсор дернул - спустя 2 секунды - появилось окно. норм.

ну а в виду маркетинговых соображений, нужную информацию лучше вывести красивым, привлекающим внимание блоком в изначально видимом регионе на главной странице, тогда даже есть шанс что ее кто-то прочитает :)
попап же любой будет вызывать неприятные чувства, поскольку отвлекает и заставляет делать лишние дейтвия что-бы его закрыть.
web 2.0 ... даже серьезные ошибки и алерты стараются отображать как можно более ненавязчиво :)
ну это вы уже автору темы про всплывающие окна пишите. Я говорю с точки зрения правильности использования не onload а все таки маус евентов.
 
Назад
Сверху