Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Блокирование кнопок управления окном браузера (https://javascript.ru/forum/events/6591-blokirovanie-knopok-upravleniya-oknom-brauzera.html)

usernew 07.12.2009 21:16

Блокирование кнопок управления окном браузера
 
Не знаю в какую ветку задать вопрос т.к. его решение можно найти для разных языков программированию
Подскажите, как можно заблокировать кнопки управления окном открытого браузера Internet Explorer ?
Имеется ввиду задача сводится к тому, чтобы для пользователя не были доступны в правом верхнем углу окна
элементы управления "свернуть окно", "развернуть", "закрыть".
Поясню для чего - имеется справочный интернет сайт установленный локально в интерактивном киоске с управляемым сенсорным экраном и "умные" пользователи постоянно закрывают его издеваясь над службой поддержки этого устройства.
Вот собственно и требуется как-то сделать неактивными кнопки управления браузером.
Окажите помощь

Gvozd 07.12.2009 21:50

клавиша F11-полноэкранный режим
IE,Opera,Firefox
Опера при этом не отображает никакие из элементов управления(остальные двое выводят панель, при наведении указателя к верхнему краю экрана)
а у вас Flash-приложение, или просто активная страница?
если первое, то сделайте полноэкранным само приложение
если второе, то остается баг в виде перехода в гугл через меню двойного щелчка по тексту(речь идет об опере), а дальше возможность закрытия вкладки,

B~Vladi 07.12.2009 23:08

Цитата:

Сообщение от usernew
Подскажите, как можно заблокировать кнопки управления окном открытого браузера Internet Explorer ?

Если для восьмого ишака - можно заюзать его баг. Можно искусственно "подвесить" его и элементы браузера не будут реагировать на действия юзера. Но нужно писать некоторый код, а мне лень:)

subzey 07.12.2009 23:27

Можно пойти другим путем.
Я тут на коленке набросал, сохраните файл с расширением .hta и запустите.
Ожидаемое поведение: управляющий сценарий открывает IE на полный экран, если окно было каким-то образом закрыто, открывает новое. Окно управляющего сценарий запускается свернутым и не видно в таскбаре, но доступно через Alt-Tab.
Проверялось на IE6.
<html>
	<head>
	<title>launcher</title>
		<hta:application
		applicationname="launcher"
		border="thin"
		borderstyle="dialog"
		caption="yes"
		icon=""
		maximizebutton="yes"
		minimizebutton="yes"
		showintaskbar="no"
		singleinstance="yes"
		sysmenu="yes"
		version="1.0"
		windowstate="minimize" />
	<style type="text/css">
		html, body {
			width: 100%;
			height: 100%;
			background: buttonface;
			border: none 0px;
			margin: 0px;
		}
		#console {
			margin: 5px;
		}
	</style>
	</head>
	<body>
		<pre id="console"></pre>
		<script type="text/javascript">
			var ie;
			function runIe(){
				log("Creating new window");
				ie = new ActiveXObject("InternetExplorer.application");
				ie.FullScreen = true;
				ie.Visible = true;
				ie.RegisterAsBrowser = true;
				ie.Navigate("http://google.ru/");
			};
			function checkIe(){
				try {
					if (ie && ie.application){
						return;
					} else {
						log ("Cannot find IE window");
						runIe();
					};
				} catch (e) {
					log ("Cannot find IE window");
					runIe();
				};
			};
			function log(str){
				var console = document.getElementById("console");
				var now = new Date();
				console.innerHTML += ("<b>" + now.toString() + "</b> " + str + "<br />");
			};
			runIe();
			setInterval(checkIe, 1000);
		</script>
	</body>
</html>

subzey 07.12.2009 23:33

Кстати, по-идее, InternetExplorer.application вызывает события OnQuit и множетво других и может отменять oncontextmenu, но каким чёртом этого добиться через HTA+javascript, я что-то не разобрался :(

usernew 08.12.2009 09:20

Коллеги, спасибо за советы!!
Думаю что предложенных вариантов должно хватить для отучения "продвинутых юзеров" от беспредела.
Попробую все варианты - результат обязательно отпишу.


Часовой пояс GMT +3, время: 16:22.