Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Нужен JavaScript показывающий заданный текст на определенную дату (https://javascript.ru/forum/misc/25010-nuzhen-javascript-pokazyvayushhijj-zadannyjj-tekst-na-opredelennuyu-datu.html)

milanov 22.01.2012 08:14

Нужен JavaScript показывающий заданный текст на определенную дату
 
Например: "текст 1" должен показываться 23 января, "текст 2" показывается 24 января и т.д.

FINoM 22.01.2012 09:10

Получить дату с помощью конструктора Date, затем проверить и вывести.

melky 22.01.2012 12:12

Цитата:

Сообщение от milanov (Сообщение 152059)
Например: "текст 1" должен показываться 23 января, "текст 2" показывается 24 января и т.д.

var parse = function(x){ return new Date(x)};
data = { "текст 1" : parse("2011-11-23"), "текст 2" : parse("2011-01-24") };
alert( data[ prompt('Введите "текст 1" или "текст 2"', "текст 1") ].toLocaleString() )

рони 22.01.2012 13:07

melky,
на всякий случай
Цитата:

Для краткого формата даты допускается использование разделителей "/" или "-", но порядок элементов должен быть строго "месяц/день/год"

рони 22.01.2012 13:40

milanov,
Вариант ...
var data = function () {
        var a = new Date;
        return [a.getMonth(), a.getDate(), a.getFullYear()].join("-")
    },
text = {
    "0-22-2012": "text 1",
    "0-23-2012": "text 2"
};
text[data()] && alert(text[data()]);

milanov 22.01.2012 13:52

Цитата:

Сообщение от рони (Сообщение 152092)
milanov,
Вариант ...
var data = function () {
        var a = new Date;
        return [a.getMonth(), a.getDate(), a.getFullYear()].join("-")
    },
text = {
    "0-22-2012": "text 1",
    "0-23-2012": "text 2"
};
text[data()] && alert(text[data()]);

А как сделать чтобы text 1 показывался на странице, а не в алерте при заходе на страницу? Что нужно изменить здесь?

рони 22.01.2012 13:59

milanov,
alert замените на document.write а сам скрипт поставьте в то место где должна появится надпись.

milanov 22.01.2012 14:08

Цитата:

Сообщение от рони (Сообщение 152092)
milanov,
Вариант ...
var data = function () {
        var a = new Date;
        return [a.getMonth(), a.getDate(), a.getFullYear()].join("-")
    },
text = {
    "0-22-2012": "text 1",
    "0-23-2012": "text 2"
};
text[data()] && alert(text[data()]);

Спасибо, пошло!:victory:

melky 22.01.2012 14:08

Цитата:

Сообщение от рони (Сообщение 152087)
melky,
на всякий случай

Вот вот.я путаю. либо в американском формате, либо в русском.

devote 22.01.2012 14:12

Цитата:

Сообщение от melky
Вот вот.я путаю. либо в американском формате, либо в русском.

С американским стандартом. Который к вашему сведению всегда нормально браузерами воспринимался.

За вот эту чушь:
Цитата:

Сообщение от рони
но порядок элементов должен быть строго "месяц/день/год"

Глаза выколоть надо тому кто это написал.


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