是否可以使用纯 JavaScript 确定客户端机器的区域设置?我需要得到一周的第一天。是星期天还是星期一。
3 回答
我无法为您找到任何开箱即用的解决方案,但如果您想坚持这一努力,您可能会发现以下想法很有用:
您可以使用 JavaScript 中的以下函数之一检测浏览器的语言环境:
http://www.techrepublic.com/article/detect-foreign-language-support-using-javascript/5069931
然后,您必须将语言环境(语言)映射到一周的首选开始日期。您可以使用支持 I18N 的本地(服务器端)脚本语言在单独的源文件中创建 JavaScript 数组:
(显示 Java 和 Python 示例)
作为替代方案,JavaScript 框架 YUI 提供了丰富的国际化框架。虽然它可能对您的需求有点沉重,而且我找不到可以为您提供一周第一天的功能,但它可能对您的应用程序派上用场:
http://yuilibrary.com/yui/docs/intl/
您可以自己将一周的第一天属性添加到资源包(或使用 tem 记录工单)。以法语资源包为例:
http://yui.yahooapis.com/combo?3.3.0/build/datatype/lang/datatype-date_fr-FR.js
还有一个支持 i18n 的 jQuery 插件:
http://plugins.jquery.com/project/jquery_i18n_properties
但看起来它没有附带可用的资源包。
唯一确定的方法是询问访客。
<fieldset id="firstdayofweekFieldset">
<legend>First Day Of the Week</legend>
<label>Sunday <input type="radio" name="firstdayofweek" value="0" checked></label>
<label>Monday <input type="radio" name="firstdayofweek" value="1" ></label>
</fieldset>