Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 07.12.2009, 21:16
Новичок на форуме
Отправить личное сообщение для usernew Посмотреть профиль Найти все сообщения от usernew
 
Регистрация: 07.12.2009
Сообщений: 2

Блокирование кнопок управления окном браузера
Не знаю в какую ветку задать вопрос т.к. его решение можно найти для разных языков программированию
Подскажите, как можно заблокировать кнопки управления окном открытого браузера Internet Explorer ?
Имеется ввиду задача сводится к тому, чтобы для пользователя не были доступны в правом верхнем углу окна
элементы управления "свернуть окно", "развернуть", "закрыть".
Поясню для чего - имеется справочный интернет сайт установленный локально в интерактивном киоске с управляемым сенсорным экраном и "умные" пользователи постоянно закрывают его издеваясь над службой поддержки этого устройства.
Вот собственно и требуется как-то сделать неактивными кнопки управления браузером.
Окажите помощь
Ответить с цитированием
  #2 (permalink)  
Старый 07.12.2009, 21:50
Аватар для Gvozd
Матрос
Отправить личное сообщение для Gvozd Посмотреть профиль Найти все сообщения от Gvozd
 
Регистрация: 04.04.2008
Сообщений: 6,246

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

Последний раз редактировалось Gvozd, 07.12.2009 в 21:56.
Ответить с цитированием
  #3 (permalink)  
Старый 07.12.2009, 23:08
Аватар для B~Vladi
Модератор Всея Форума
Отправить личное сообщение для B~Vladi Посмотреть профиль Найти все сообщения от B~Vladi
 
Регистрация: 14.05.2009
Сообщений: 4,021

Сообщение от usernew
Подскажите, как можно заблокировать кнопки управления окном открытого браузера Internet Explorer ?
Если для восьмого ишака - можно заюзать его баг. Можно искусственно "подвесить" его и элементы браузера не будут реагировать на действия юзера. Но нужно писать некоторый код, а мне лень
Ответить с цитированием
  #4 (permalink)  
Старый 07.12.2009, 23:27
Аватар для subzey
Пионэр
Отправить личное сообщение для subzey Посмотреть профиль Найти все сообщения от subzey
 
Регистрация: 16.11.2009
Сообщений: 1,322

Можно пойти другим путем.
Я тут на коленке набросал, сохраните файл с расширением .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>
Ответить с цитированием
  #5 (permalink)  
Старый 07.12.2009, 23:33
Аватар для subzey
Пионэр
Отправить личное сообщение для subzey Посмотреть профиль Найти все сообщения от subzey
 
Регистрация: 16.11.2009
Сообщений: 1,322

Кстати, по-идее, InternetExplorer.application вызывает события OnQuit и множетво других и может отменять oncontextmenu, но каким чёртом этого добиться через HTA+javascript, я что-то не разобрался
Ответить с цитированием
  #6 (permalink)  
Старый 08.12.2009, 09:20
Новичок на форуме
Отправить личное сообщение для usernew Посмотреть профиль Найти все сообщения от usernew
 
Регистрация: 07.12.2009
Сообщений: 2

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



Опции темы Искать в теме
Искать в теме:

Расширенный поиск