[源码下载]

重新想象 Windows 8 Store Apps (57) - 本地化和全球化

作者:webabcd

介绍
重新想象 Windows 8 Store Apps 之 本地化和全球化

  • 本地化 - Demo
  • 本地化 - 改变语言
  • 全球化 - Demo
  • 全球化 - 格式化数字

示例
1、演示本地化的基本应用
Localization/LocalizationDemo.xaml

  1. <Page
  2. x:Class="XamlDemo.Localization.LocalizationDemo"
  3. xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  4. xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  5. xmlns:local="using:XamlDemo.Localization"
  6. xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
  7. xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
  8. mc:Ignorable="d">
  9.  
  10. <Grid Background="Transparent">
  11. <StackPanel Margin="120 0 0 0">
  12.  
  13. <TextBlock FontSize="14.667">
  14. <Run>本地化资源文件,以下举例说明:</Run>
  15. <LineBreak />
  16. <Run>1、在 en 目录下的是英文资源文件,在 zh-CN 目录下的是简体中文(zh 代表语言,CN 代表国家或地区)资源文件</Run>
  17. <LineBreak />
  18. <Run>2、Resources.lang-en.resw 代表英文资源文件,Resources.lang-zh-CN.resw 代表简体中文资源文件</Run>
  19. <LineBreak />
  20. <Run>3、图片资源的本地化可以参照以上命名规则,同时可与 scale 和 high contrast 相结合</Run>
  21. <LineBreak />
  22. <Run>4、Package.appxmanifest 中引用的字符串也支持本地化,引用方式:ms-resource:Hello 或 ms-resource:///Resources/Hello</Run>
  23. <LineBreak />
  24. <Run>5、Tile 和 Toast 中引用的字符串也支持本地化,引用方式:ms-resource:Hello 或 ms-resource:///Resources/Hello</Run>
  25. <LineBreak />
  26. <Run>6、当无法找到某语言对应的资源时,系统会自动使用 Package.appxmanifest 中设置的默认语言所对应的资源</Run>
  27. </TextBlock>
  28.  
  29. <!--
  30. 通过 x:Uid 本地化控件的各个属性,请参看资源文件中的 HelloTextBlock.FontSize 和 HelloTextBlock.Text
  31. -->
  32. <TextBlock x:Uid="HelloTextBlock" Margin="0 10 0 0" />
  33.  
  34. <!--
  35. code - behind 方式获取本地化资源
  36. -->
  37. <TextBlock x:Name="lblMsg" FontSize="14.667" Margin="0 10 0 0" />
  38.  
  39. <!--
  40. 图片的本地化
  41. -->
  42. <Image Source="/Localization/Logo.png" Width="200" Height="100" Margin="0 10 0 0" HorizontalAlignment="Left" />
  43.  
  44. </StackPanel>
  45. </Grid>
  46. </Page>

Localization/LocalizationDemo.xaml.cs

  1. /*
  2. * 演示本地化的基本应用
  3. *
  4. * 另:
  5. * Visual Studio 2012 的多语言应用程序工具包请参见:http://msdn.microsoft.com/zh-cn/windows/apps/hh848309
  6. */
  7.  
  8. using Windows.ApplicationModel.Resources;
  9. using Windows.ApplicationModel.Resources.Core;
  10. using Windows.UI.Xaml.Controls;
  11. using Windows.UI.Xaml.Navigation;
  12.  
  13. namespace XamlDemo.Localization
  14. {
  15. public sealed partial class LocalizationDemo : Page
  16. {
  17. public LocalizationDemo()
  18. {
  19. this.InitializeComponent();
  20. }
  21.  
  22. protected override void OnNavigatedTo(NavigationEventArgs e)
  23. {
  24. /*
  25. * ResourceLoader resourceLoader = new ResourceLoader(); - 获取默认的 ResourceLoader(Resources.resw 中的资源)
  26. * ResourceLoader resourceLoader = new ResourceLoader("MyResources"); - 获取指定的 ResourceLoader(MyResources.resw 中的资源)
  27. * ResourceLoader resourceLoader = new ResourceLoader("ClassLibrary/MyResources"); - 获取指定类库的指定的 ResourceLoader(ClassLibrary 类库中的 MyResources.resw 中的资源)
  28. */
  29.  
  30. // 获取默认的 ResourceLoader(即 Resources.resw 中的资源)
  31. ResourceLoader resourceLoader = new ResourceLoader();
  32.  
  33. // 通过资源标识,获取指定的资源
  34. lblMsg.Text = resourceLoader.GetString("Hello");
  35. }
  36. }
  37. }

2、演示与“改变语言”相关的一些应用
Localization/Language.xaml

  1. <Page
  2. x:Class="XamlDemo.Localization.Language"
  3. xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  4. xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  5. xmlns:local="using:XamlDemo.Localization"
  6. xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
  7. xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
  8. mc:Ignorable="d">
  9.  
  10. <Grid Background="Transparent">
  11. <StackPanel Margin="120 0 0 0">
  12.  
  13. <ComboBox Name="cmbLanguage" Width="800" HorizontalAlignment="Left" />
  14.  
  15. <Button Name="btnGetEng" Content="获取英文资源" Margin="0 10 0 0" Click="btnGetEng_Click_1" />
  16.  
  17. <TextBlock Name="lblMsg" FontSize="14.667" Margin="0 10 0 0" />
  18.  
  19. </StackPanel>
  20. </Grid>
  21. </Page>

Localization/Language.xaml.cs

  1. /*
  2. * 演示与“改变语言”相关的一些应用
  3. *
  4. * 1、演示如何改变当前的语言环境
  5. * 2、演示如何监测当前语言环境发生的变化
  6. * 3、演示如何获取指定语言环境下的资源
  7. */
  8.  
  9. using System;
  10. using System.Collections.Generic;
  11. using System.Text;
  12. using Windows.ApplicationModel.Resources.Core;
  13. using Windows.Globalization;
  14. using Windows.UI.Core;
  15. using Windows.UI.Xaml;
  16. using Windows.UI.Xaml.Controls;
  17.  
  18. namespace XamlDemo.Localization
  19. {
  20. public sealed partial class Language : Page
  21. {
  22. public Language()
  23. {
  24. this.InitializeComponent();
  25.  
  26. this.Loaded += Language_Loaded;
  27. }
  28.  
  29. void Language_Loaded(object sender, RoutedEventArgs e)
  30. {
  31. string currentLanguage;
  32. // 获取当前的语言
  33. ResourceManager.Current.DefaultContext.QualifierValues.TryGetValue("Language", out currentLanguage);
  34. lblMsg.Text = "current language: " + currentLanguage;
  35. lblMsg.Text += Environment.NewLine;
  36.  
  37. // ApplicationLanguages.ManifestLanguages - 遍历 Package.appxmanifest 中的语言列表
  38. foreach (string strLang in ApplicationLanguages.ManifestLanguages)
  39. {
  40. // 关于 Language 的说明详见 GlobalizationDemo.xaml
  41. var lang = new Windows.Globalization.Language(strLang);
  42. cmbLanguage.Items.Add(string.Format("DisplayName:{0}, NativeName:{1}, LanguageTag:{2}, Script:{3}",
  43. lang.DisplayName, lang.NativeName, lang.LanguageTag, lang.Script));
  44. }
  45. cmbLanguage.SelectionChanged += cmbLanguage_SelectionChanged;
  46.  
  47. // 获取当前语言环境的指定资源
  48. lblMsg.Text += ResourceManager.Current.MainResourceMap.GetValue("Resources/Hello").ValueAsString;
  49. // 当前语言环境发生改变时所触发的事件(通过 API 更改或者通过“电脑设置 -> 常规 -> 语言首选项”更改都会触发此事件)
  50. ResourceManager.Current.DefaultContext.QualifierValues.MapChanged += async (s, m) =>
  51. {
  52. await Dispatcher.RunAsync(CoreDispatcherPriority.Normal, () =>
  53. {
  54. lblMsg.Text += Environment.NewLine;
  55. lblMsg.Text += ResourceManager.Current.MainResourceMap.GetValue("Resources/Hello").ValueAsString;
  56. });
  57. };
  58. }
  59.  
  60. void cmbLanguage_SelectionChanged(object sender, SelectionChangedEventArgs e)
  61. {
  62. // ApplicationLanguages.PrimaryLanguageOverride - 设置或获取首选语言的 BCP-47 语言标记
  63. if (cmbLanguage.SelectedValue.ToString().Contains("LanguageTag:en"))
  64. Windows.Globalization.ApplicationLanguages.PrimaryLanguageOverride = "en";
  65. else if (cmbLanguage.SelectedValue.ToString().Contains("LanguageTag:zh-Hans-CN"))
  66. Windows.Globalization.ApplicationLanguages.PrimaryLanguageOverride = "zh-Hans-CN";
  67.  
  68. StringBuilder sb = new StringBuilder();
  69. // ApplicationLanguages.Languages - 运行时级别的语言列表
  70. foreach (string item in ApplicationLanguages.Languages)
  71. {
  72. sb.Append(item);
  73. sb.Append(",");
  74. }
  75.  
  76. lblMsg.Text += Environment.NewLine;
  77. lblMsg.Text += "ApplicationLanguages.Languages: " + sb.ToString();
  78. }
  79.  
  80. private void btnGetEng_Click_1(object sender, RoutedEventArgs e)
  81. {
  82. // 指定 ResourceContext 为 en 语言环境
  83. ResourceContext resourceContext = new ResourceContext();
  84. resourceContext.Languages = new List<string>() { "en" };
  85.  
  86. // 获取 en 语言环境下的 Resources 映射
  87. ResourceMap resourceMap = ResourceManager.Current.MainResourceMap.GetSubtree("Resources");
  88. lblMsg.Text += Environment.NewLine;
  89. // 获取指定的语言环境下的指定标识的资源
  90. lblMsg.Text += "英语的 Hello: " + resourceMap.GetValue("Hello", resourceContext).ValueAsString;
  91. }
  92. }
  93. }

3、演示全球化的基本应用
Localization/GlobalizationDemo.xaml

  1. <Page
  2. x:Class="XamlDemo.Localization.GlobalizationDemo"
  3. xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  4. xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  5. xmlns:local="using:XamlDemo.Localization"
  6. xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
  7. xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
  8. mc:Ignorable="d">
  9.  
  10. <Grid Background="Transparent">
  11. <StackPanel Margin="120 0 0 0">
  12.  
  13. <TextBlock Name="lblMsg" FontSize="14.667" />
  14.  
  15. </StackPanel>
  16. </Grid>
  17. </Page>

Localization/GlobalizationDemo.xaml.cs

  1. /*
  2. * 演示全球化的基本应用
  3. *
  4. * 注:本地化和全球化的区别
  5. * 1、全球化的产品应该适用于任何一个本地市场
  6. * 2、本地化通常会有 UI 的调整,语言的翻译,甚至是针对本地开发的一些特殊的功能
  7. * 3、一个全球化的产品做本地化时,一般只做语言翻译
  8. */
  9.  
  10. using System;
  11. using Windows.Globalization;
  12. using Windows.System.UserProfile;
  13. using Windows.UI.Xaml.Controls;
  14. using Windows.UI.Xaml.Navigation;
  15.  
  16. namespace XamlDemo.Localization
  17. {
  18. public sealed partial class GlobalizationDemo : Page
  19. {
  20. public GlobalizationDemo()
  21. {
  22. this.InitializeComponent();
  23. }
  24.  
  25. protected override void OnNavigatedTo(NavigationEventArgs e)
  26. {
  27. // 首选语言
  28. lblMsg.Text = "Current Languages: " + string.Join(", ", GlobalizationPreferences.Languages);
  29. lblMsg.Text += Environment.NewLine;
  30. // 首选日历(比如:GregorianCalendar 提供了世界上大多数国家/地区使用的标准日历系统)
  31. lblMsg.Text += "Current Calendars: " + string.Join(", ", GlobalizationPreferences.Calendars);
  32. lblMsg.Text += Environment.NewLine;
  33. // 时钟显示(比如:24HourClock)
  34. lblMsg.Text += "Current Clocks: " + string.Join(", ", GlobalizationPreferences.Clocks);
  35. lblMsg.Text += Environment.NewLine;
  36. // 区域(比如:CN)
  37. lblMsg.Text += "Current HomeGeographicRegion: " + GlobalizationPreferences.HomeGeographicRegion;
  38. lblMsg.Text += Environment.NewLine;
  39. // 一周的第一天是周几(比如:中国是 Monday)
  40. lblMsg.Text += "Current WeekStartsOn: " + GlobalizationPreferences.WeekStartsOn.ToString();
  41. lblMsg.Text += Environment.NewLine;
  42. lblMsg.Text += Environment.NewLine;
  43.  
  44. // Language - 语言对象,通过指定 BCP-47 语言标记来实例化语言对象
  45. Windows.Globalization.Language language = new Windows.Globalization.Language("zh-Hans-CN");
  46. // 语言的本地化名称
  47. lblMsg.Text += "zh-Hans-CN Language DisplayName: " + language.DisplayName;
  48. lblMsg.Text += Environment.NewLine;
  49. // 语言本身的名称
  50. lblMsg.Text += "zh-Hans-CN Language NativeName: " + language.NativeName;
  51. lblMsg.Text += Environment.NewLine;
  52. // 语言的 BCP-47 语言标记
  53. lblMsg.Text += "zh-Hans-CN Language LanguageTag: " + language.LanguageTag;
  54. lblMsg.Text += Environment.NewLine;
  55. // 语言的 ISO 15924 脚本代码
  56. lblMsg.Text += "zh-Hans-CN Language Script: " + language.Script;
  57. lblMsg.Text += Environment.NewLine;
  58. // 获取当前输入法编辑器 (IME) 的 BCP-47 语言标记
  59. lblMsg.Text += "zh-Hans-CN Language CurrentInputMethodLanguageTag: " + Windows.Globalization.Language.CurrentInputMethodLanguageTag;
  60. lblMsg.Text += Environment.NewLine;
  61. lblMsg.Text += Environment.NewLine;
  62.  
  63. // GeographicRegion - 区域对象(关于 ISO 3166-1 请参见:http://zh.wikipedia.org/zh-cn/ISO_3166-1)
  64. GeographicRegion geographicRegion = new GeographicRegion(); // 获取当前的区域对象。
  65. // 区域的本地化名称
  66. lblMsg.Text += "Current Region DisplayName: " + geographicRegion.DisplayName;
  67. lblMsg.Text += Environment.NewLine;
  68. // 区域本身的名称
  69. lblMsg.Text += "Current Region NativeName: " + geographicRegion.NativeName;
  70. lblMsg.Text += Environment.NewLine;
  71. // 该区域内使用的货币类型
  72. lblMsg.Text += "Current Region CurrenciesInUse: " + string.Join(",", geographicRegion.CurrenciesInUse);
  73. lblMsg.Text += Environment.NewLine;
  74. // 该区域的 ISO 3166-1 二位字母标识
  75. lblMsg.Text += "Current Region CodeTwoLetter: " + geographicRegion.CodeTwoLetter;
  76. lblMsg.Text += Environment.NewLine;
  77. // 该区域的 ISO 3166-1 三位字母标识
  78. lblMsg.Text += "Current Region CodeThreeLetter: " + geographicRegion.CodeThreeLetter;
  79. // 该区域的 ISO 3166-1 数字标识
  80. lblMsg.Text += Environment.NewLine;
  81. lblMsg.Text += "Current Region CodeThreeDigit: " + geographicRegion.CodeThreeDigit;
  82. lblMsg.Text += Environment.NewLine;
  83. lblMsg.Text += Environment.NewLine;
  84.  
  85. // Calendar - 日历对象,默认返回当前系统的默认日历
  86. Calendar calendarDefault = new Calendar();
  87. // 第一个参数:将日历转换为字符串时,优先使用的语言标识列表;第二个参数:指定日历的类型;第三个参数:指定是12小时制还是24小时制
  88. Calendar calendarHebrew = new Calendar(new[] { "zh-CN" }, CalendarIdentifiers.Hebrew, ClockIdentifiers.TwentyFourHour);
  89. lblMsg.Text += "Gregorian Day: " + calendarDefault.DayAsString(); // 公历的日期
  90. lblMsg.Text += Environment.NewLine;
  91. lblMsg.Text += "Hebrew Day: " + calendarHebrew.DayAsString(); // 希伯来历的日期
  92. // Calendar 还有很多属性和方法,不再一一介绍,需要时查 msdn
  93. }
  94. }
  95. }

4、演示不同语言环境下对数字的格式化
Localization/NumberFormatting.xaml

  1. <Page
  2. x:Class="XamlDemo.Localization.NumberFormatting"
  3. xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  4. xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  5. xmlns:local="using:XamlDemo.Localization"
  6. xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
  7. xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
  8. mc:Ignorable="d">
  9.  
  10. <Grid Background="Transparent">
  11. <StackPanel Margin="120 0 0 0">
  12.  
  13. <TextBlock Name="lblMsg" FontSize="14.667" />
  14.  
  15. </StackPanel>
  16. </Grid>
  17. </Page>

Localization/NumberFormatting.xaml.cs

  1. /*
  2. * 演示不同语言环境下对数字的格式化
  3. */
  4.  
  5. using System;
  6. using Windows.Globalization.NumberFormatting;
  7. using Windows.UI.Xaml.Controls;
  8. using Windows.UI.Xaml.Navigation;
  9.  
  10. namespace XamlDemo.Localization
  11. {
  12. public sealed partial class NumberFormatting : Page
  13. {
  14. public NumberFormatting()
  15. {
  16. this.InitializeComponent();
  17. }
  18.  
  19. protected override void OnNavigatedTo(NavigationEventArgs e)
  20. {
  21. // 百分比格式化
  22. PercentFormatter percentFormatter = new PercentFormatter();
  23. // PercentFormatter percentFormatter = new PercentFormatter(new[] { "zh-Hans-CN" }, "CN");
  24. lblMsg.Text = percentFormatter.Format(3.1415926);
  25. lblMsg.Text += Environment.NewLine;
  26.  
  27. // 千分比格式化
  28. PermilleFormatter permilleFormatter = new PermilleFormatter();
  29. // PermilleFormatter permilleFormatter = new PermilleFormatter(new[] { "zh-Hans-CN" }, "CN");
  30. lblMsg.Text += permilleFormatter.Format(3.1415926);
  31. lblMsg.Text += Environment.NewLine;
  32.  
  33. // 数字格式化
  34. DecimalFormatter decimalFormatter = new DecimalFormatter();
  35. // DecimalFormatter decimalFormatter = new DecimalFormatter(new[] { "zh-Hans-CN" }, "CN");
  36. lblMsg.Text += decimalFormatter.Format(3.1415926);
  37. lblMsg.Text += Environment.NewLine;
  38.  
  39. // 货币格式化
  40. CurrencyFormatter currencyFormatter = new CurrencyFormatter("CNY");
  41. // CurrencyFormatter currencyFormatter = new CurrencyFormatter("CNY", new[] { "zh-Hans-CN" }, "CN");
  42. lblMsg.Text += currencyFormatter.Format(3.1415926);
  43. }
  44. }
  45. }

OK
[源码下载]

重新想象 Windows 8 Store Apps (57) - 本地化和全球化的更多相关文章

  1. 重新想象 Windows 8 Store Apps 系列文章索引

    [源码下载][重新想象 Windows 8.1 Store Apps 系列文章] 重新想象 Windows 8 Store Apps 系列文章索引 作者:webabcd 1.重新想象 Windows ...

  2. 重新想象 Windows 8 Store Apps (34) - 通知: Toast Demo, Tile Demo, Badge Demo

    [源码下载] 重新想象 Windows 8 Store Apps (34) - 通知: Toast Demo, Tile Demo, Badge Demo 作者:webabcd 介绍重新想象 Wind ...

  3. 重新想象 Windows 8 Store Apps (35) - 通知: Toast 详解

    [源码下载] 重新想象 Windows 8 Store Apps (35) - 通知: Toast 详解 作者:webabcd 介绍重新想象 Windows 8 Store Apps 之 通知 Toa ...

  4. 重新想象 Windows 8 Store Apps (36) - 通知: Tile 详解

    [源码下载] 重新想象 Windows 8 Store Apps (36) - 通知: Tile 详解 作者:webabcd 介绍重新想象 Windows 8 Store Apps 之 通知 Tile ...

  5. 重新想象 Windows 8 Store Apps (37) - 契约: Settings Contract

    [源码下载] 重新想象 Windows 8 Store Apps (37) - 契约: Settings Contract 作者:webabcd 介绍重新想象 Windows 8 Store Apps ...

  6. 重新想象 Windows 8 Store Apps (38) - 契约: Search Contract

    [源码下载] 重新想象 Windows 8 Store Apps (38) - 契约: Search Contract 作者:webabcd 介绍重新想象 Windows 8 Store Apps 之 ...

  7. 重新想象 Windows 8 Store Apps (39) - 契约: Share Contract

    [源码下载] 重新想象 Windows 8 Store Apps (39) - 契约: Share Contract 作者:webabcd 介绍重新想象 Windows 8 Store Apps 之  ...

  8. 重新想象 Windows 8 Store Apps (40) - 剪切板: 复制/粘贴文本, html, 图片, 文件

    [源码下载] 重新想象 Windows 8 Store Apps (40) - 剪切板: 复制/粘贴文本, html, 图片, 文件 作者:webabcd 介绍重新想象 Windows 8 Store ...

  9. 重新想象 Windows 8 Store Apps (41) - 打印

    [源码下载] 重新想象 Windows 8 Store Apps (41) - 打印 作者:webabcd 介绍重新想象 Windows 8 Store Apps 之 打印 示例1.需要打印的文档Pr ...

随机推荐

  1. chm格式文件能打开,但看不到内容问题

    是chm格式的能打开文件,也能看到左边的目录信息,但是无法显示右面的具体内容.报错:无法显示网页.错误页面的url是:res://C:WINDOWSsystem32shdoclc.dll/dnserr ...

  2. JVM 参数翻译汉化解释

    博客搬家,新地址:http://www.zicheng.net/article/38.htm Behavioral Options(行为参数) Option and Default Value Des ...

  3. Windows下移动MariaDB数据目录 (转!)

    Windows下移动MariaDB数据目录: http://www.xue163.com/news/940/9403312.html [环境]OS:Windows Server 2008 R2 x64 ...

  4. aspose.cell 设置excel里面的文字是超链接

    目的: 1.通过方法designer.Workbook.Worksheets[0].Hyperlinks.Add("A1", 1, 1, url);给导出到excel里面的数据加上 ...

  5. [转]优秀Python学习资源收集汇总

    Python是一种面向对象.直译式计算机程序设计语言.它的语法简捷和清晰,尽量使用无异义的英语单词,与其它大多数程序设计语言使用大括号不一样,它使用縮进来定义语句块.与Scheme.Ruby.Perl ...

  6. js webapp 滑动事件

    var startX, startY, endX, endY; $(".detailImg").on("touchstart", touchStart);$(& ...

  7. JavaScript进阶内容1:各种对象类型判断

    该文章主要用来介绍JavaScript中常用的一些对象检测判断方法,整理资源来自书本和网络,如有错误或说明不详之处,望评论提出,本菜定提名感谢……(本文章知识比较基础,大牛请提些意见再绕道,三克油^_ ...

  8. [原创]与来自facebook的朋友交流

    与来自facebook的朋友交流 老板的儿子在facebook工作,现在正好有个假期回来,老总让我们部门与之进行一次交流.其实主要是他讲一下那边情况,然后我们准备些问题,多扩展一下我们见识. 流程 交 ...

  9. cocos2d-x开发: 整合apache http,用于自己检索多项目svn文件

    本来我的项目都是放在自己的虚拟机svn仓库中,随着仓库越来越多,有的时候需要去查看项目文件.check out到本地之后,挨个查看也是可以的,可是check out也是需要时间的,就想起了apache ...

  10. jQuery手机端上拉刷新下拉加载更多页面

    基于jQuery手机端上拉下拉刷新页面代码.这是一款类似QQ空间客户端或者微信下拉刷新页面特效代码.效果图如下: 在线预览   源码下载 实现的代码. html代码: <div id=" ...