该库通过提供多种预定义语言环境以及自定义选项,支持调度器的本地化。默认情况下,DHTMLX Scheduler 提供英文语言环境。
要设置调度器的语言,只需在 scheduler.i18n 对象上使用 setLocale 方法激活所需的语言环境。
scheduler.i18n.setLocale("fr");
你可以使用 dhtmlxscheduler.js 文件中包含的预定义语言环境,也可以创建自定义语言环境。
语言环境可以动态切换,但只有在通过调用 scheduler.render() 或 scheduler.init() 完全重绘调度器后,更新才会生效。
scheduler.i18n.setLocale("fr");
scheduler.init("scheduler_here");
Common 和 Recurring 语言环境文件均包含在 dhtmlxscheduler.js 文件中。
dhtmlxScheduler 支持以下语言的本地化:
语言 | 语言代码 |
阿拉伯语 | ar |
白俄罗斯语 | be |
加泰罗尼亚语 | ca |
中文 | cn |
捷克语 | cs |
丹麦语 | da |
荷兰语 | nl |
英语 | en (默认) |
芬兰语 | fi |
法语 | fr |
德语 | de |
希腊语 | el |
希伯来语 | he |
匈牙利语 | hu |
印度尼西亚语 | id |
意大利语 | it |
日语 | jp |
挪威语 | no |
挪威博克马尔语 | nb |
波兰语 | pl |
葡萄牙语 | pt |
罗马尼亚语 | ro |
俄语 | ru |
斯洛伐克语 | sk |
斯洛文尼亚语 | si |
西班牙语 | es |
瑞典语 | sv |
土耳其语 | tr |
乌克兰语 | ua |
scheduler.i18n 对象自 v6.0 起可用。在早期版本中,使用的是 scheduler.locale 对象。详情请参阅 迁移指南。
创建自定义语言环境最简单的方法是从下方示例复制默认英文语言环境,并将字符串翻译为你希望的语言。
有两种方式将自定义语言环境应用到调度器:
scheduler.i18n.setLocale(localeObject);
如果只提供部分语言环境对象,调度器会将你的标签与现有语言环境合并:
scheduler.i18n.setLocale({
labels: {
day_tab: "Day",
}
});
scheduler.i18n.addLocale("lang", localeObject);
scheduler.i18n.setLocale("lang");
请注意,切换到自定义语言环境会修改应用界面。请确保检查并调整所有依赖于语言环境的元素,以确保调度器在新语言下正确显示。
注意
English locale definition
scheduler.i18n.setLocale({
date:{
month_full: ["January", "February", "March", "April", "May", "June",
"July", "August", "September", "October", "November", "December"],
month_short: ["Jan", "Feb", "Mar", "Apr", "May", "Jun",
"Jul", "Aug", "Sep", "Oct", "Nov", "Dec"],
day_full: ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday",
"Friday", "Saturday"],
day_short: ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"]
},
labels:{
dhx_cal_today_button: "Today",
day_tab: "Day",
week_tab: "Week",
month_tab: "Month",
new_event: "New event",
icon_save: "Save",
icon_cancel: "Cancel",
icon_details: "Details",
icon_edit: "Edit",
icon_delete: "Delete",
confirm_closing: "", // Your changes will be lost, are your sure?
confirm_deleting: "Event will be deleted permanently, are you sure?",
section_description: "Description",
section_time: "Time period",
full_day: "Full day",
/*recurring events*/
confirm_recurring:"Edit recurring event",
section_recurring:"Repeat event",
button_recurring:"Disabled",
button_recurring_open:"Enabled",
button_edit_series: "All events",
button_edit_occurrence: "This event",
button_edit_occurrence_and_following: "This and following events",
/*agenda view extension*/
agenda_tab: "Agenda",
date: "Date",
description: "Description",
/*year view extension*/
year_tab: "Year",
/* week agenda extension */
week_agenda_tab: "Agenda",
/*grid view extension*/
grid_tab: "Grid",
/* touch tooltip*/
drag_to_create: "Drag to create",
drag_to_move: "Drag to move",
/* dhtmlx message default buttons */
message_ok: "OK",
message_cancel: "Cancel",
/* wai aria labels for non-text controls */
next: "Next",
prev: "Previous",
year: "Year",
month: "Month",
day: "Day",
hour: "Hour",
minute: "Minute",
/* legacy recurring event components */
repeat_radio_day: "Daily", // name="repeat" value="day"
repeat_radio_week: "Weekly", // name="repeat" value="week
repeat_radio_month: "Monthly",
repeat_radio_year: "Yearly",
repeat_radio_day_type: "Every",
repeat_text_day_count: "day",
repeat_radio_day_type2: "Every workday",
repeat_week: " Repeat every",
repeat_text_week_count: "week next days:",
repeat_radio_month_type: "Repeat",
repeat_radio_month_start: "On",
repeat_text_month_day: "day every",
repeat_text_month_count: "month",
repeat_text_month_count2_before: "every",
repeat_text_month_count2_after: "month",
repeat_year_label: "On",
select_year_day2: "of",
repeat_text_year_day: "day",
select_year_month: "month",
repeat_radio_end: "No end date",
repeat_text_occurrences_count: "occurrences",
repeat_radio_end2: "After",
repeat_radio_end3: "End by",
/* recurring event components */
repeat_never: "Never",
repeat_daily: "Every day",
repeat_workdays: "Every weekday",
repeat_weekly: "Every week",
repeat_monthly: "Every month",
repeat_yearly: "Every year",
repeat_custom: "Custom",
repeat_freq_day: "Day",
repeat_freq_week: "Week",
repeat_freq_month: "Month",
repeat_freq_year: "Year",
repeat_on_date: "On date",
repeat_ends: "Ends",
month_for_recurring: ["January", "February", "March", "April", "May", "June",
"July", "August", "September", "October", "November", "December"],
day_for_recurring: ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday",
"Friday", "Saturday"]
}
});