🔍Разыскиваются VueJs волонтеры!

 

EN в Twitter EN В Контакте EN в Facebook
Предстоящие игры:
(#282) "Один в поле - воин"
одиночная игра,
30.12.2025 / 17:00:00
Игра: Схватка
Авторы: ~KIVI~, ксюх
Участие: бесплатное
RSS 2.0
Домен: https://34.en.cx/ (владелец домена: ксюх) Показать аватары
Модераторы форума: Dracula_666, ~KIVI~, ксюх
На страницу: 
1  <<  10  11  12  13  14  15  16  >>  20

HTML дизайн, обмен опытом, помощь новичкам.

22.03.2011 7:27:13 / 398 сообщений / автор темы _Серёга_ .

Подполковник
Мальчик
 Kh.d
(
)
Аттестат
[ 17.09.2013 18:55:27 (UTC +3), kaluga.en.cx ]  
hatabi4:
з.ы. изначально хотелось тикающие часы обратного отсчета) щас не могу вспомнить на каком домене видел

Пример "тикающих часов обратного отсчета" дашь?)
Подполковник
Мальчик
 Kh.d
(
)
Аттестат
[ 18.09.2013 9:35:40 (UTC +3), kaluga.en.cx ]  
Kh.d:
hatabi4:
з.ы. изначально хотелось тикающие часы обратного отсчета) щас не могу вспомнить на каком домене видел

Пример "тикающих часов обратного отсчета" дашь?)

Имел ввиду хотя бы описание, что, как и где должно считать.
Старший лейтенант
(
)
Аттестат
[ 18.09.2013 9:44:48 (UTC +3), tgn.en.cx ]  
найти домен не смог(где видел). Часы сделаны по формату: 00:00:00 и идет обратный отсчет до начала игры ближайшей
Майор
Мальчик
(
)
Аттестат
[ 18.09.2013 10:29:21 (UTC +3), kostroma.en.cx ]  
hatabi4: найти домен не смог(где видел). Часы сделаны по формату: 00:00:00 и идет обратный отсчет до начала игры ближайшей
Не что-то подобное: https://kostroma.en.cx/GameScenario.aspx?gid=44065#1?
Тогда прямая дорога на https://www.timegenerator.ru/
Он уже выдаст скрипт, который нужно будет вставить в анонс/движок/оформление.
Подполковник
Мальчик
 Kh.d
(
)
Аттестат
[ 18.09.2013 12:27:40 (UTC +3), kaluga.en.cx ]  
Вставлять каждый раз счетчик - не очень удобно, как мне кажется.

2 hatabi4 :

<!-- Простой счётчик времени до следующей игры -->
<table style="cellspacing: 0; cellpadding: 0; width: 100%;"><tbody><tr><td style="text-align: center; font-size: 120%; color: #ffff00; padding-bottom:10px;padding-top:10px">Следующая игра через:</td></tr><tr><td id="next-game-timer" style="text-align: center; font-size: 150%; color: #ffffff;">&nbsp;</td></tr></tbody></table>
<script>
var ngd = new Date($("[id$=lblYourTime]:first").text().replace(/^(\d+)\.(\d+\.)(\d+)/,"$3.$2$1"))
var NGTimer = function(){var d = Math.ceil((ngd - Date.now()) / 1000);$("#next-game-timer").text(isNaN(ngd.getDate())?"целую вечность....":(Math.floor(d/86400) + "д. " + Math.floor(d%86400/3600) + "ч. " + Math.floor(d%3600/60) + "м. " + d%60 + "с.").replace(/ (\d\D)/ig," 0$1"));setTimeout(NGTimer, 1000);}
NGTimer();
</script>

Это самый простенький вариант. К секундам, минутам, часам добавляется ведущий ноль, если анонсов нет вообще - вместо времени выводится фраза "через целую вечность".

Если интересует что-то, что будет выглядеть, как счетчик, который генерируется по ссылке - пишите) Посижу, сделаю что-нибудь на таком же уровне анимации.

P.S. Это написано под правую колонку, для того, чтобы вставить счетчик по центру вверху, ПЕРЕД анонсами, придётся чуть-чуть переделать. Опять таки, будет нужно - пишите)

UPD: Не корректно отображается на некоторых страницах, чуть позже исправлю.
Старший лейтенант
(
)
Аттестат
[ 18.09.2013 12:44:06 (UTC +3), tgn.en.cx ]  
Kh.d,
спасибо! вот именно такой скрипт и искал
Майор
Мальчик
(
)
Аттестат
[ 18.09.2013 13:23:15 (UTC +3), kostroma.en.cx ]  
Kh.d: Вставлять каждый раз счетчик - не очень удобно, как мне кажется.
Я ответил на то, что понял из вопроса.
Понял неверно, видимо. (:
Подполковник
Мальчик
 Kh.d
(
)
Аттестат
[ 18.09.2013 13:37:31 (UTC +3), kaluga.en.cx ]  
Поправил счетчик. Теперь работает корректно, во всяком случае, похоже на то.

<!-- Простой счётчик времени до следующей игры -->
<table style="cellspacing: 0; cellpadding: 0; width: 100%;"><tbody><tr><td style="text-align: center; font-size: 120%; color: #ffff00; padding-bottom:10px;padding-top:10px">Следующая игра через:</td></tr><tr><td id="next-game-timer" style="text-align: center; font-size: 150%; color: #ffffff;">?д. ?ч. ?м. ?с.</td></tr></tbody></table>
<script>
var NGTimerInit = function(ttng){var NGTimer = function(ttng){setTimeout(NGTimer, 1000, ttng-1);$("#next-game-timer").text(ttng?(Math.floor(ttng/86400) + "д. " + Math.floor(ttng%86400/3600) + "ч. " + Math.floor(ttng%3600/60) + "м. " + ttng%60 + "с.").replace(/ (\d\D)/ig," 0$1"):"...............");};NGTimer(ttng)};if (document.location.pathname.match(/^\/Default\.aspx$|^\/$/)){NGTimerInit(Math.ceil((new Date($("[id$=lblYourTime]:first").text().replace(/^(\d+)\.(\d+\.)(\d+)/,"$3.$2$1")) - Date.now()) / 1000));}else{$.get("/Default.aspx").done(function(r){var t = $(r).find("[id$=_EnterGameTimerHolder] [id^=TimerTexttime]:first").text().match(/\d+ /gi);NGTimerInit(t?t[0]*86400+t[1]*3600+t[2]*60+t[3]*1:undefined);})}
</script>
Старший лейтенант
(
)
Аттестат
[ 18.09.2013 15:56:13 (UTC +3), tgn.en.cx ]  
Kh.d: Поправил счетчик. Теперь работает корректно, во всяком случае, похоже на то.

<!-- Простой счётчик времени до следующей игры -->
<table style="cellspacing: 0; cellpadding: 0; width: 100%;"><tbody><tr><td style="text-align: center; font-size: 120%; color: #ffff00; padding-bottom:10px;padding-top:10px">Следующая игра через:</td></tr><tr><td id="next-game-timer" style="text-align: center; font-size: 150%; color: #ffffff;">?д. ?ч. ?м. ?с.</td></tr></tbody></table>
<script>
var NGTimerInit = function(ttng){var NGTimer = function(ttng){setTimeout(NGTimer, 1000, ttng-1);$("#next-game-timer").text(ttng?(Math.floor(ttng/86400) + "д. " + Math.floor(ttng%86400/3600) + "ч. " + Math.floor(ttng%3600/60) + "м. " + ttng%60 + "с.").replace(/ (\d\D)/ig," 0$1"):"...............");};NGTimer(ttng)};if (document.location.pathname.match(/^\/Default\.aspx$|^\/$/)){NGTimerInit(Math.ceil((new Date($("[id$=lblYourTime]:first").text().replace(/^(\d+)\.(\d+\.)(\d+)/,"$3.$2$1")) - Date.now()) / 1000));}else{$.get("/Default.aspx").done(function(r){var t = $(r).find("[id$=_EnterGameTimerHolder] [id^=TimerTexttime]:first").text().match(/\d+ /gi);NGTimerInit(t?t[0]*86400+t[1]*3600+t[2]*60+t[3]*1:undefined);})}
</script>
ага. первый вариант работал только на главной странице, на всех остальных писал (всех страницах домена) - "ждем вечность..."
Старший лейтенант
(
)
Аттестат
[ 19.09.2013 11:25:22 (UTC +3), tgn.en.cx ]  
и все же не все гладко...( на произвольных страницах вместо цифр многоточие, ну и еще на нескольких системных
Подполковник
Мальчик
 Kh.d
(
)
Аттестат
[ 19.09.2013 13:42:59 (UTC +3), kaluga.en.cx ]  
Пример такой системной страницы?

UPD Произвольные страницы - как я понимаю, все страницы с шаблоном "стандартный"?

UPD 2 Проверил на произвольной странице с шаблоном "стандартный" - скрипт внедряется в правую колонку, работает.
Проверил на произвольной странице с шаблоном "простой" - скрипт внедряется в саму страницу, работает.
Подполковник
Мальчик
 Kh.d
(
)
Аттестат
[ 19.09.2013 14:28:11 (UTC +3), kaluga.en.cx ]  
Ошибку нашёл, исправил. Итак, 3 (UPD 3.5) версия :

<!-- Простой счётчик времени до следующей игры -->
<table style="cellspacing: 0; cellpadding: 0; width: 100%;"><tbody><tr><td style="text-align: center; font-size: 120%; color: #ffff00; padding-bottom:10px;padding-top:10px">Следующая игра через:</td></tr><tr><td id="next-game-timer" style="text-align: center; font-size: 150%; color: #ffffff;">?д. ?ч. ?м. ?с.</td></tr></tbody></table>
<script>
var NGTimerInit = function(ottng){var tst = Date.now();var NGTimer = function(){setTimeout(NGTimer, 500); var ttng = ottng - Math.floor((Date.now()-tst)/1000);$("#next-game-timer").text(ttng?(Math.floor(ttng/86400) + "д. " + Math.floor(ttng%86400/3600) + "ч. " + Math.floor(ttng%3600/60) + "м. " + ttng%60 + "с.").replace(/ (\d\D)/ig," 0$1"):"...............");};NGTimer()};if (document.location.pathname.match(/^\/Default\.aspx$|^\/$/)){NGTimerInit(Math.ceil((new Date($("[id$=lblYourTime]:first").text().replace(/^(\d+)\.(\d+\.)(\d+)/,"$3.$2$1")) - Date.now()) / 1000));}else{$.get("/Default.aspx").done(function(r){var t = $(r).find("[id$=_EnterGameTimerHolder] [id^=TimerTexttime]:first").text();NGTimerInit(t?(t.match(/.*?(\d+)\s*дн*/)||[0,0])[1]*86400+(t.match(/.*?(\d+)\s*час*/)||[0,0])[1]*3600+(t.match(/.*?(\d+)\s*мин*/)||[0,0])[1]*60+(t.match(/.*?(\d+)\s*сек*/)||[0,0])[1]*1:undefined);
})}
</script>

UPD: Убрал постепенно появляющуюся погрешность, теперь время считается относительно точно.
Старший лейтенант
(
)
Аттестат
[ 19.09.2013 15:15:30 (UTC +3), tgn.en.cx ]  
да, был косяк с произвольными страницами со стандартным шаблоном
Подполковник
Мальчик
(
)
Аттестат
[ 22.09.2013 20:18:30 (UTC +3), kovrov.en.cx ]  
А есть ли скрипт, который закрывал бы сектора в нескольких разных уровнях одновременно?
Кстати вот какой вопрос возник, может кто сталкивался, или администрация соизволит ответить... Развлекаюсь я тут помаленьку со сторонней обвязкой к движку. JavaScript не знаю толком (да и запретить его когда-то обещали), поэтому решаю задачу в лоб, отдельным веб-приложением. Есть желание с этого веб-приложения бить код в движок.
Сама реализация-то не проблема, вопрос в другом: меня движок не заблокирует по ip как бота, если будет играть, допустим, 10-20 команд (соответственно авторизации в движке и вводы кодов будут идти с одного ip)?
Подполковник
Мальчик
 Kh.d
(
)
Аттестат
[ 23.09.2013 7:21:34 (UTC +3), kaluga.en.cx ]  
2 strangeman:
А почему не возвращать код на клиент, и пусть он его сам отправляет?
Kh.d: 2 strangeman:
А почему не возвращать код на клиент, и пусть он его сам отправляет?
Cross-domain? Но это же обычно запрещено. Или я неправильно понял?
Подполковник
Мальчик
 Kh.d
(
)
Аттестат
[ 23.09.2013 9:09:13 (UTC +3), kaluga.en.cx ]  
strangeman:
Kh.d: 2 strangeman:
А почему не возвращать код на клиент, и пусть он его сам отправляет?
Cross-domain? Но это же обычно запрещено. Или я неправильно понял?

Почему X ? Делаешь аджакс к своему бэкенду, в зависимости от логики возвращаешь то, что тебе нужно и КОД. И потом отправляешь код с фронтенда - просто симулируешь "вбитие" кода клиентом. На клиенте придется использовать джаваскрипт, но чисто символически.
Генерал-полковник
Мальчик
(
)
Золотой Орден I степени Золотой Орден I степени
Аттестат
[ 23.09.2013 9:59:19 (UTC +3), dubna.en.cx ]  
прямо помощь новичками)
Kh.d: Почему X ? Делаешь аджакс к своему бэкенду, в зависимости от логики возвращаешь то, что тебе нужно и КОД. И потом отправляешь код с фронтенда - просто симулируешь "вбитие" кода клиентом. На клиенте придется использовать джаваскрипт, но чисто символически.
А, через AJAX. Ну да, вариант, спасибо.
На страницу: 
1  <<  10  11  12  13  14  15  16  >>  20
18.12.2024 21:32:50
(UTC +3)

www.en.cx
EncounterTM Ltd.
2004-2024 ©