Js: как да проверя дали прозорецът е на фокус?

sizif

Registered
Здравейте!

Как да проверя дали потребителят разглежда страницата или се е прехвърлил към друг прозорец?

Пример: отворил е 2 прозореца: уеб-турист и гугъл. Как да разбера дали в момента разглежда прозореца, в който е отворен уеб-турист?

Благодаря предварително!

ПП: onblur и onfocus към <body>-тага не вършат работа :(
 
Можеш да опиташ с document.onmousemove да извършваш някаква функция, което ще показва дали потребителя мърда мишката си из документа и ако е така значи го разглежда :) За друго не се сещам...
 
А ако прозорецът не заема целия екран и курсора на мишката не попада върху него?
 
Точно onfocus и onblur ти трябват!Сега точно пробвам, но нещо не мога да намеря правилното решение! :)
 
Я пробвай този код!Значи като си селектирал основния прозорец, background-а става червен, иначе е бял.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<SCRIPT TYPE="text/javascript">

</SCRIPT>
</head>

<BODY onFocus="setbg('red')" onBlur="setbg('white')">
<a href="#" onclick="window.open('proba.html', '','width=300, height=400');">Натисни</a>
</body>
</html>
 
emagi,

благодаря, че следиш темата!

Този код работи. Пробвах нещо подобно още снощи, а днес следобед пробвах съвсем същия код. При модзила върши работа донякъде, при ИЕ се справя по-добре, но тук пък дава друг проблем - ако има друг елемент, напр текстареа (ако си спомняш кода, к ми писа тези дни) и в нея се кликне за писане, <БОДИ>-тага излиза от фокус за сметка на текстареата. И прави така за всеки елемент - т.е. не е достоверна проверка.

Решението не е в боди-тага, а си мисля, че и неправилно питам.

Обекта трябва да е window, а метода ми е неясен. Може би проверка с window.event , но какво ще ми върне като стойности?

С onfocus и onblur става кашотина. Не са подходящи, а обектът със сигурност трябва да е най-големия - window.
 
В калдата ми пуснаха този код, но нещо не ми се вижда много читав или аз не разбирам, как да го използвам:

<script>
window.onfocus = function()
{
// executed when the main window is focused

alert('Hi');
}

window.onblur = function()
{
// executed when the main window lost the focus

alert('Buy');
}
</script>
 

Back
Горе