Показать сообщение отдельно
  #5 (permalink)  
Старый 03.12.2011, 10:58
Интересующийся
Отправить личное сообщение для bk99 Посмотреть профиль Найти все сообщения от bk99
 
Регистрация: 22.11.2011
Сообщений: 16

Ну вот, сделал то, что задумывал (начинка .hta файла):
<html>
<head>
<title>Timer</title>
  <hta:application
    applicationname=Timer
    innerborder=no
    scroll=no
    contextmenu=no
  />

<script language="javascript">
	resizeTo(380,126);
	moveTo((screen.width/2-190),(screen.height/2-63));
</script>

<script type="text/javascript">
	var h=m=s=0;
	var timeId=null;

function f2 (v) { return (v<10?'0'+v:v); }

function inittime (hour,min,sec) {
	h=Math.max(hour,0); m=Math.max(min,0); s=Math.max(sec,0);
	timeID=setTimeout("showtime();",1000);
	}

function changetime() {
	s--;
		if (s<0) {
		s=59;
		m--;
			if (m<0) {
			m=59;
				if (h>0) h--;
				else { h=m=s=0; }
	}}}

function showtime () {
	var t=h*3600+m*60+s;
	if (t>0) {
		document.getElementById('clock').innerHTML=f2(h)+':'+f2(m)+':'+f2(s);
		changetime();
		setTimeout("showtime();",1000);
	}
	else if (t<1) {
		document.getElementById('clock').innerHTML='00:00:00';
		clearTimeout(timeID);
		alert('Время истекло!');
		close();
	}}
</script>

<style type="text/css">
	body {
		background:buttonface;
		margin:3px;
	}
	table {
		border-collapse:collapse;
		text-align:center;
		}
	#a {
		width:100%;
		box-sizing:border-box;
		font:55px sans-serif;
	}
	#b {
		font:22px/.76 monospace;
		color:buttonshadow;
	}
    button {
		height:65px;
		border;
		font:48px monospace;
		color:buttonshadow;
	}
	input {
		background-color:buttonface;
		border:transparent;
		font:86px/.77 sans-serif;
		height:65px;
		width:96px;
	}
	#clock {
		font:94px/.85 sans-serif;
	}
</style>
</head>
<body>

<div id="clock">
<table>
 <tbody id="a">
  <tr>
	<td><input type=text name="h" value="00" maxlength="2"></td>
	<td>:</td>
	<td><input type=text name="m" value="00" maxlength="2"></td>
	<td>:</td>
	<td><input type=text name="s" value="00" maxlength="2"></td>
	<td><button title="Старт" onclick="inittime(
			document.getElementById('h').value,
			document.getElementById('m').value,
			document.getElementById('s').value);">&#9658;</button></td>
  </tr>
 </tbody>
 <tbody id="b">
  <tr>
	<td>час</td>
	<td></td>
	<td>мин</td>
	<td></td>
	<td>сек</td>
	<td></tr>
 </tbody>
</table>
</div>

</body>
</html>

Посмотрите, пожалуйста, на предмет оптимизации/уменьшения размера (чем меньше, тем лучше!) - приветствую любые замечания.
И вопросы:
1. можно ли сделать так, чтобы при запуске таймера окно программы сворачивалось в трей;
2. как сделать, чтобы окно alert по истечении времени всплывало поверх ВСЕХ окон?
Спасибо.
Ответить с цитированием