FullCalendar today-button: date instead of text // lang 问题
FullCalendar today-button: date instead of text // issue with the lang
我想在今天按钮中显示当前日期而不是固定文本。
这个 >> irismediainfo3.lili.de 是我正在开发的开发网站。
我在文档中找不到该选项,所以我在 moment.js-docs 中搜索并找到:
moment().format();
并像这样在 FullCalendar 中使用它:
buttonText: {
next: '>',
nextYear: '>>',
prev: '<',
prevYear: '<<',
today: moment().format("MMMM YYYY")
},
结果不错,但只有英文。
FullCalendar 应该是多语言的,所以我尝试将它与
moment.locale(String);
第一次尝试:
buttonText: {
next: '>',
nextYear: '>>',
prev: '<',
prevYear: '<<',
today: moment().locale('de').format("MMMM YYYY")
},
但是没有任何变化。我想 moment.js 也许可以访问 FullCalendar 的 lang 文件。这是我的第一个问题:
moment.js 包含在 FullCalendar 中。我必须将 lang 文件放在 FullCalendar 目录中的什么位置才能使 moment.js?
可以访问它
我发现了一个更复杂的语法,下一次没有让我的 FullCalendar 崩溃的尝试是:
buttonText: {
next: '>',
nextYear: '>>',
prev: '<',
prevYear: '<<',
today: moment().locale('de', {months : "Januar_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember".split("_")}).format("MMMM YYYY")
},
它没有让我的 FullCalendar 崩溃,但也没有任何影响。
实际上代码中的'de'和带有月份名称的长字符串是由我使用的CMS的编译器创建的。它被称为 SPIP。开头的 URL 包含一个语言变量。如果将该变量更改为 "en"、"fr" 或 "de"(其他语言也可以,但网站将针对这些语言制作),您可以看到 FullCalendar 正在更改语言。只有今天按钮保持英文。
URL 中的语言变量将自动提供给 FullCalendar 代码。只要 FullCalendar 的其余部分正在更改语言,来自 URL 的变量就会正确传递。
我什至尝试从 momentjs.com 主页获取所有语言的完整 moment.js 代码,并将其粘贴到 FullCalendar lib 目录中的 moment.js 文件中。但即便如此,语言也没有改变。
是否可以定义 moment.js 应该使用内联的语言?
感谢您的宝贵时间和帮助。
尼尔斯 T.
嗯,我知道怎么做了。
第 1 步:获取语言。
转到 locale directory of moment.js on github 并下载您需要的语言。我拿了 de.js, en.js & fr.js.
第 2 步:将它们上传到您的服务器。
我在服务器上的 FullCalendar 目录中创建了一个新文件夹,并将其命名为 "momentjs_locale" 并将文件上传到那里。
第 3 步:Link 语言文件。
为了安全起见,我 link 在我 link FullCalendar 文件就在 link 到 moment.js 后面的同一个地方编辑了它们
所以对我来说它看起来像:
<link href='../fullcalendar.css' rel='stylesheet' />
<link href='../fullcalendar.print.css' rel='stylesheet' media='print' />
<script src='../lib/moment.min.js'></script>
<script src="momentjs_locale/de.js"></script>
<script src="momentjs_locale/en.js"></script>
<script src="momentjs_locale/fr.js"></script>
<script src='../lib/jquery.min.js'></script>
<script src='../fullcalendar.min.js'></script>
第 4 步:使用它。现在您可以use the languages like it is described in the documentation of moment.js。
<script>
$(document).ready(function() {
//Here I am setting the global language for moment.js to german (which is "en" by default.)
moment.locale("de");
$('#calendar').fullCalendar({
buttonText: {
//Here I make the button show French date instead of a text.
today: moment().locale("fr").format("MMMM YYYY")
},
//more options...
});
});
</script>
所以如果有人有类似的问题,我希望这可以帮助它。
再见:)
我想在今天按钮中显示当前日期而不是固定文本。 这个 >> irismediainfo3.lili.de 是我正在开发的开发网站。 我在文档中找不到该选项,所以我在 moment.js-docs 中搜索并找到:
moment().format();
并像这样在 FullCalendar 中使用它:
buttonText: {
next: '>',
nextYear: '>>',
prev: '<',
prevYear: '<<',
today: moment().format("MMMM YYYY")
},
结果不错,但只有英文。 FullCalendar 应该是多语言的,所以我尝试将它与
moment.locale(String);
第一次尝试:
buttonText: {
next: '>',
nextYear: '>>',
prev: '<',
prevYear: '<<',
today: moment().locale('de').format("MMMM YYYY")
},
但是没有任何变化。我想 moment.js 也许可以访问 FullCalendar 的 lang 文件。这是我的第一个问题:
moment.js 包含在 FullCalendar 中。我必须将 lang 文件放在 FullCalendar 目录中的什么位置才能使 moment.js?
可以访问它我发现了一个更复杂的语法,下一次没有让我的 FullCalendar 崩溃的尝试是:
buttonText: {
next: '>',
nextYear: '>>',
prev: '<',
prevYear: '<<',
today: moment().locale('de', {months : "Januar_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember".split("_")}).format("MMMM YYYY")
},
它没有让我的 FullCalendar 崩溃,但也没有任何影响。
实际上代码中的'de'和带有月份名称的长字符串是由我使用的CMS的编译器创建的。它被称为 SPIP。开头的 URL 包含一个语言变量。如果将该变量更改为 "en"、"fr" 或 "de"(其他语言也可以,但网站将针对这些语言制作),您可以看到 FullCalendar 正在更改语言。只有今天按钮保持英文。 URL 中的语言变量将自动提供给 FullCalendar 代码。只要 FullCalendar 的其余部分正在更改语言,来自 URL 的变量就会正确传递。
我什至尝试从 momentjs.com 主页获取所有语言的完整 moment.js 代码,并将其粘贴到 FullCalendar lib 目录中的 moment.js 文件中。但即便如此,语言也没有改变。
是否可以定义 moment.js 应该使用内联的语言?
感谢您的宝贵时间和帮助。 尼尔斯 T.
嗯,我知道怎么做了。
第 1 步:获取语言。 转到 locale directory of moment.js on github 并下载您需要的语言。我拿了 de.js, en.js & fr.js.
第 2 步:将它们上传到您的服务器。 我在服务器上的 FullCalendar 目录中创建了一个新文件夹,并将其命名为 "momentjs_locale" 并将文件上传到那里。
第 3 步:Link 语言文件。 为了安全起见,我 link 在我 link FullCalendar 文件就在 link 到 moment.js 后面的同一个地方编辑了它们 所以对我来说它看起来像:
<link href='../fullcalendar.css' rel='stylesheet' />
<link href='../fullcalendar.print.css' rel='stylesheet' media='print' />
<script src='../lib/moment.min.js'></script>
<script src="momentjs_locale/de.js"></script>
<script src="momentjs_locale/en.js"></script>
<script src="momentjs_locale/fr.js"></script>
<script src='../lib/jquery.min.js'></script>
<script src='../fullcalendar.min.js'></script>
第 4 步:使用它。现在您可以use the languages like it is described in the documentation of moment.js。
<script>
$(document).ready(function() {
//Here I am setting the global language for moment.js to german (which is "en" by default.)
moment.locale("de");
$('#calendar').fullCalendar({
buttonText: {
//Here I make the button show French date instead of a text.
today: moment().locale("fr").format("MMMM YYYY")
},
//more options...
});
});
</script>
所以如果有人有类似的问题,我希望这可以帮助它。 再见:)