向用户呈现可选时区的好方法是什么?
What are good ways to present selectable timezones to the user?
是否真的有必要让用户从 PHP 的 timezone_identifiers_list() 返回的任何时区中进行选择?有大量的时区,并且 HTML 下拉菜单在某些系统上由于有太多选项而非常滞后。我知道我可以手动生成常见的美国时区,例如太平洋、东部、中部等。但是是否有常用国际时区的列表?所谓通用,我的意思是如果我要使用该列表,那么它将捕获我 99.9% 的国际用户群。必须将每个可能的时区作为用户的选项包括在内似乎有点矫枉过正。有没有人对一般时区的最佳做法有想法?
你可以用很多不同的方式来做到这一点。
我想说效果最好的就是我们 PHP 的 timezone_identifiers_list()
。
但是不要制作下拉列表,而是制作两个下拉列表。
- 下拉列表应包含区域(欧洲、亚洲、印度等)
- 下拉列表应包含所选区域的城市。
然后您应该将带有城市的下拉列表设为可搜索字段,这样一个人可以写一些城市名称,它只显示城市,包括该人所写的内容。 (as @dam660 suggested Chosen is a good choice here)
这样你就可以涵盖所有时区,而且看起来不会一团糟。
if I were to use that list, then it would capture 99.9% of my international user base
您知道 99.9% 的国际用户群来自哪里吗?然后你可以自己assemble这个列表。
或者您可以根据其他信息(例如用户的城市或国家/地区)建议时区。您可以尝试使用 GeoIP 来确定他的位置(但要注意代理)。
将列表拆分为两个列表(大陆和位置),根据建议进行预选。
Is it really necessary to allow the user to pick from any timezone returned by PHP's timezone_identifiers_list()?
不,用户为什么要为此烦恼?处理不同时区的一种做法是将所有内容作为 unix 时间戳存储在数据库中。然后,当您显示它时,使用一点 javascript 将其转换为用户的时区相关日期和时间。
是否真的有必要让用户从 PHP 的 timezone_identifiers_list() 返回的任何时区中进行选择?有大量的时区,并且 HTML 下拉菜单在某些系统上由于有太多选项而非常滞后。我知道我可以手动生成常见的美国时区,例如太平洋、东部、中部等。但是是否有常用国际时区的列表?所谓通用,我的意思是如果我要使用该列表,那么它将捕获我 99.9% 的国际用户群。必须将每个可能的时区作为用户的选项包括在内似乎有点矫枉过正。有没有人对一般时区的最佳做法有想法?
你可以用很多不同的方式来做到这一点。
我想说效果最好的就是我们 PHP 的 timezone_identifiers_list()
。
但是不要制作下拉列表,而是制作两个下拉列表。
- 下拉列表应包含区域(欧洲、亚洲、印度等)
- 下拉列表应包含所选区域的城市。
然后您应该将带有城市的下拉列表设为可搜索字段,这样一个人可以写一些城市名称,它只显示城市,包括该人所写的内容。 (as @dam660 suggested Chosen is a good choice here)
这样你就可以涵盖所有时区,而且看起来不会一团糟。
if I were to use that list, then it would capture 99.9% of my international user base
您知道 99.9% 的国际用户群来自哪里吗?然后你可以自己assemble这个列表。
或者您可以根据其他信息(例如用户的城市或国家/地区)建议时区。您可以尝试使用 GeoIP 来确定他的位置(但要注意代理)。
将列表拆分为两个列表(大陆和位置),根据建议进行预选。
Is it really necessary to allow the user to pick from any timezone returned by PHP's timezone_identifiers_list()?
不,用户为什么要为此烦恼?处理不同时区的一种做法是将所有内容作为 unix 时间戳存储在数据库中。然后,当您显示它时,使用一点 javascript 将其转换为用户的时区相关日期和时间。