Можете ли вы принудительно сосредоточиться на вызывающем окне IE при закрытии дочернего окна IE в Windows CE? - PullRequest
0 голосов
/ 19 октября 2010

У меня есть приложение Struts, которое используется на портативных устройствах под управлением Windows CE 4.2 / 5.0.

В этом приложении нам нужна была функциональность другого приложения, и было решено открыть окно для другого приложения.(используя window.open ()), запустите процесс и закройте окно, чтобы вернуться к исходному приложению.

Обычно наши приложения всегда фокусируются на определенном текстовом поле после действия.Когда новое окно закрывается, исходное окно не становится активным окном, и мне трудно понять, как активировать окно и сфокусироваться на текстовом поле.

Есть ли способ управления, которыйОкно становится активным, когда оно закрывается и вызывает событие фокуса на требуемом поле?

Заранее спасибо за помощь.

РЕДАКТИРОВАТЬ: Если кто-то сталкивался с этим вопросом, оказывается, что доступ к window.opener недоступен в WindowsCE, если OEM специально не включил его в свою версию ОС.См. эту статью базы знаний для получения дополнительной информации.

1 Ответ

1 голос
/ 20 октября 2010

Не уверен насчет Windows CE, но с JavaScript вы можете использовать window.opener для обращения к родительскому окну из всплывающего окна.Я написал небольшой пример для демонстрации.Надеюсь, это поможет вам:

Сохраните это как parent.html файл:

<html>
<head>
<script type="text/javascript">
    function openPopup() {
        window.open("child.html", "", "dependent=yes,directories=no,height=400px,width=600px,menubar=no,resizable=yes,scrollbars=yes,status=yes,title=yes,toolbar=no");
    }
</script>
</head>
<body>
<input type="text" name="txt" id="txtId" value="blah" />
<input type="button" name="btn" value="Open popup" onclick="openPopup();" />
</body>
</html>

и это как child.html:

<html>
<head>
<script type="text/javascript">
    function goToParent() {
        window.opener.focus();
        window.opener.document.getElementById("txtId").focus();
        window.close();
    }
</script>
</head>
<body>
Push the button to close this window and focus on the parent's textbox<br />
<input type="button" name="btn2" value="Close popup" onclick="goToParent();" />
</body>
</html>

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

...