Форум программистов, компьютерный форум, киберфорум
JavaScript
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/6: Рейтинг темы: голосов - 6, средняя оценка - 4.50
0 / 0 / 0
Регистрация: 31.03.2014
Сообщений: 5

Все дело в "кнопке"

31.03.2014, 15:51. Показов 1266. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте, помогите мне пожалуйста с программой. Задача: на кнопке находится таймер, при нажатии на кнопку должно прописью отображаться время (например: семнадцать часов двадцать минут сорок секунд итд.) Можно пользоваться любыми средствами html, javascript, css.

Кнопку я задал с помощью блоков. Через javascript у меня не получилось сделать так, чтобы часы были на кнопке.
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
<html>
<head>
<title>Дата время.</title>
<script type="text/javascript">
</head>
<body>
 
<style type="text/css">
a.button, a.button:wisited { 
margin-left: 280px; 
display: block; 
border:1px solid; 
border-color: #aaa #000 #000 #aaa; 
 
text-decoration:none; 
width:28em; 
height:2em; 
line-height:2em; 
background:#FFFF00; 
font-weight:bold 
}
 
a.button:hover {
background:#FFA500; 
position:relative; 
top:1px; left:1px; 
border-color: #000 #aaa #aaa #000} 
}
</style> 
<form>
<p>
<a href="#" class="button">
<script type="text/javascript">
document.write(time_is_now())
</script>;
</body>
</html>
 
</a>
</p>
</form>
</html>
Подскажите пожалуйста, как правильно сделать так, чтобы при нажатии на кнопку начал работать другой скрипт(записывающий время прописью), записанный в html документе. Вот его листинг:
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
<html>
<head>
<title>Пропись.</title>
<script type="text/javascript">
function time_is_now() {
var Time = new Date();
var this_Hour = Time.getHours();
var this_Min = Time.getMinutes();
var this_Sec = Time.getSeconds();
var text = "Сейчас: ";
var ending_m = " минут";
var ending_h = " час";
var ending_s = "секунд";
 
Hour = new Array( "ноль", "один", "два", "три", "четыре", "пять", "шесть", "семь",
"восемь", "девять", "десять", "одиннадцать", "двенадцать", "тринадцать",
"четырнадцать", "пятнадцать", "шестнадцать", "семнадцать", "восемнадцать",
"девятнадцать", "двадцать", "двадцать один", "двадцать два", "двадцать три");
 
Min = new Array( "ноль", "одна", "две", "три", "четыре", "пять", "шесть", "семь",
"восемь", "девять", "десять", "одиннадцать", "двенадцать", "тринадцать",
"четырнадцать", "пятнадцать", "шестнадцать", "семнадцать", "восемнадцать",
"девятнадцать");
 
Sec = new Array( "ноль", "одна", "две", "три", "четыре", "пять", "шесть", "семь",
"восемь", "девять", "десять", "одиннадцать", "двенадцать", "тринадцать",
"четырнадцать", "пятнадцать", "шестнадцать", "семнадцать", "восемнадцать",
"девятнадцать", "двадцать", "двадцать один", "двадцать два", "двадцать три");
 
text += Hour[this_Hour] + " ";
 
if (this_Hour > 10 && this_Hour < 20) ending_h += "ов";
else {
 this_Hour = this_Hour % 10;
 if (this_Hour > 1 && this_Hour < 5) ending_h += "а";
 else if (this_Hour == 1);
 else ending_h += "ов";
}
text += ending_h + " ";
 
if (this_Min < 20) text += Min[this_Min];
else {
 twenty_min = Math.floor(this_Min / 10);
 switch(twenty_min) {
  case 2 : text += "двадцать "; break;
  case 3 : text += "тридцать "; break;
  case 4 : text += "сорок "; break;
  case 5 : text += "пятьдесят "; break;
 }
 if (this_Min % 10 != 0) text += Min[Math.abs(this_Min % 10)];
}
 
if (this_Min > 10 && this_Min < 20);
else {
 this_Min = this_Min % 10;
 if (this_Min > 1 && this_Min < 5) ending_m += "ы";
 else if (this_Min == 1) ending_m += "а";
}
text += ending_m + " "
 
if (this_Sec < 20) text += Sec[this_Sec];
else {
 twenty_sec = Math.floor(this_Sec / 10);
 switch(twenty_sec) {
  case 2 : text += "двадцать "; break;
  case 3 : text += "тридцать "; break;
  case 4 : text += "сорок "; break;
  case 5 : text += "пятьдесят "; break;
 }
 if (this_Sec % 10 != 0) text += Sec[Math.abs(this_Sec % 10)];
}
if (this_Sec > 10 && this_Sec < 20);
else {
 this_Sec = this_Sec % 10;
 if (this_Sec > 1 && this_Sec < 5) ending_s += "ы";
 else if (this_Sec == 1) ending_s += "а";
}
text += " " + ending_s;
 
return text;
}
</script>
</body>
</html>
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
31.03.2014, 15:51
Ответы с готовыми решениями:

Дело в мониторе? Или всё таки в видеокарте?
Всем доброго времени суток! Постараюсь описать проблему. Не так давно приобрел видеокарту Asus gtx 660 ti DC2 и всё казалось бы здорово, но...

И все таки в чем дело? Микрозависание в играх!
И так начнём с описание системы: Windows 7 64 bit (с торрента) Материнская плата GIGABYTE GA-790XTA-UD4 (rev. 1.0) ...

Предприниматель, начав дело, взял кредит размером k рублей под p процентов годовых и вложив его в свое дело. По прогноза
Предприниматель, начав дело, взял кредит размером k рублей под p процентов годовых и вложив его в свое дело. По прогнозам его дело должно...

4
супермизантроп
Эксперт JS
3941 / 2979 / 692
Регистрация: 18.04.2012
Сообщений: 8,629
31.03.2014, 17:35
как-то всё очень сложно у вас
можно сделать значительно проще и в разы короче

только уточните, верно ли я понял задание:

1) имеем кнопку, непосредственно на которой работают часы, выдающие текущее время в формате ЧЧ:ММ:СС

2) при нажатии на кнопку формат текущего времени на той же кнопке изменяется на часы минуты секунды (прописью, с правильным склонением)

3) при повторном нажатии на кнопку формат текущего времени на кнопке возвращается к исходному ЧЧ:ММ:СС (и т.д.)
0
0 / 0 / 0
Регистрация: 31.03.2014
Сообщений: 5
31.03.2014, 22:18  [ТС]
Да-да-да, все верно
К сожалению только недавно стал изучать курс скриптов, поэтому с реализацией у меня все тяжко.
0
супермизантроп
Эксперт JS
3941 / 2979 / 692
Регистрация: 18.04.2012
Сообщений: 8,629
01.04.2014, 01:01
Лучший ответ Сообщение было отмечено Laknak как решение

Решение

HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=windows-1251">
<script>
function myNumberClock ()
{
var d = new Date (), t = [d.getHours (), d.getMinutes (), d.getSeconds ()];
if (S > 0) var r = [addZero (t [0]), addZero (t [1]), addZero (t [2])].join (':');
else var r = [myDecl (t [0], 0), myDecl (t [1], 1), myDecl (t [2], 2)].join (' ');
document.getElementById ('btn').value = r; setTimeout (myNumberClock, 1000);
   function addZero (x) {return ((x < 10) ? '0' : '') + x}
   function myDecl (n, q)
   { 
   var w = [['час',     'часа',    'часов' ],  // q = 0
            ['минута',  'минуты',  'минут' ],  // q = 1
            ['секунда', 'секунды', 'секунд']], // q = 2
       k = n % 10,
       l = (!k || n > 5 && n < 21 || k > 4) ? 2 : ((k == 1) ? 0 : 1),
      z2 = w [q] [l],
     l11 = ['ноль', q ? 'одна' : 'один', q ? 'две' : 'два', 'три', 'четыре', 'пять', 'шесть', 'семь', 'восемь', 'девять', 'десять'];
   if (n < 11) var z1 = l11 [n];
   else if (n < 20) var z1 = ['один', 'две', 'три', 'четыр', 'пят', 'шест', 'сем', 'восем', 'девят'] [n - 11] + 'надцать';
   else if (n > 19) var z1 = ['двадцать', 'тридцать', 'сорок', 'пятьдесят'] [(n - k - 20) / 10] + (k ? (' ' + l11 [k]) : '');
   return z1 + ' ' + z2; 
   }
}
onload = function () {document.getElementById ('btn').addEventListener ('click', function () {S *= -1}); S = 1; myNumberClock ()}
</script>
</head>
<body>
<input id="btn" type="button">
</body>
</html>
1
0 / 0 / 0
Регистрация: 31.03.2014
Сообщений: 5
01.04.2014, 10:34  [ТС]
Спасибо вам огромное!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
01.04.2014, 10:34
Помогаю со студенческими работами здесь

Вроде всё легко, но происходит ошибка. В чём дело?
import discord from discord.ext import commands from discord.ext.command import Bot Bot = commands.Bot(command_prefix='!') ...

Edit, ADOTable и БД. Неполучается все это дело соединить
Доброго времени суток! Есть две таблицы: &quot;Платежи&quot; и &quot;Фирмы&quot;. В таблице &quot;Платежи&quot;, два столбца ПлатДок и Фир_ID, а в &quot;Фирмы&quot;...

На локальной машине все работает, а на сервере нет в чем дело
Я ставлю большую задержку в работе скрипта из-за этого соединение прерывается я сделал проверку if(!$db-&gt;select(&quot;SELECT 1&quot;)){ ...

Не могу найти ошибку, может быть дело даже не в коде, но все же
Не компилируется прога и все тут, уже каждый символ проверил, логически все верно. Суть даже в том, что ошибок то и нет, но программа...

Ошибок нет , но код все равно не работает , в чем дело? VS 2019 C++
#include &lt;iostream&gt; using namespace std; int main() { setlocale(0, &quot;&quot;); int a, b; cout &lt;&lt; &quot;Введите первое число: &quot;; ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Программный контроль заполнения реквизита табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать контроль заполнения реквизита табличной части. . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Программное заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru