实现浏览器界面的多语言显示的方法

xiaoxiao2021-2-28  177

实现浏览器界面的多语言显示的方法
【技术领域】
[0001]本发明涉及计算机领域,更具体地涉及实现浏览器界面的多语言显示的方法。
【背景技术】
[0002]网页浏览器是一种用于显示网页服务器或文件系统内的文件,并使能用户与这些文件交互的软件。网页浏览器主要通过超文本传输协议(Hypertext transfer protocol,HTTP)与网页服务器交互并获取网页。个人电脑上常用的网页浏览器包括微软公司的Internet Explorer、网景公司的Firefox、谷歌公司的Chrome、苹果公司的Safari等。
[0003]网页浏览器包括浏览器内核和浏览器外壳两部分。浏览器内核也就是网页浏览器所采用的渲染引擎,其负责网页内容的获取、网页编写语法的解释、以及网页显示方式的计算等。不同的浏览器内核对网页编写语法的解释不同,因此同一网页在具有不同浏览器内核的网页浏览器里的渲染(或显示)效果通常是不同的。浏览器内核通常由诸如c、c++之类的编程语言实现。浏览器外壳是一个面向用户的界面,用于向用户提供网页浏览器能够实现的各种功能,包括菜单、工具栏等。在浏览器外壳中,有些功能需要利用浏览器内核来实现,比如保存网页上的图片;而有些功能不需要利用浏览器内核来实现,比如前进、后退功能。浏览器外壳通常由诸如C#、C++之类的编程语言结合诸如Java Script、VB Script之类的脚本语言实现。
[0004]网页浏览器分为原生浏览器和套壳浏览器两种。原生浏览器是指诸如微软公司的Internet Explorer、网景公司的Firefox、谷歌公司的Chrome、苹果公司的Safari等的拥有完整独立内核的网页浏览器。套壳浏览器是指在原生浏览器的浏览器内核上添加自定义的包含多种辅助功能的浏览器外壳,并改变其名称与外观的网页浏览器,如360浏览器、腾讯QQ浏览器、搜狗浏览器等。

【发明内容】

[0005]本发明提供了一种实现浏览器界面的多语言显示的方法。
[0006]根据本发明实施例的实现浏览器界面的多语言显示的方法,包括:计算设备从外部获取并存储与一种或多种语言相对应的一个或多个版本的浏览器外壳,其中该一个或多个版本的浏览器外壳均是完全采用脚本语言实现的;以及当需要显示预定语言的浏览器界面时,计算设备加载与预定语言相对应的一个版本的浏览器外壳而无需重新加载浏览器内核。
[0007]在根据本发明实施例的实现浏览器界面的多语言显示的方法中,由于无需连同浏览器内核一起获取浏览器外壳,所以可以节省计算设备获取浏览器外壳所需的时间和网络资源。另外,由于这里的浏览器外壳是完全采用脚本语言实现的,所以可以节省网页浏览器提供商开发浏览器外壳所需的时间且成本。
【附图说明】
[0008]从下面结合附图对本发明的【具体实施方式】的描述中可以更好地理解本发明,其中:
[0009]图1是示出根据本发明实施例的实现浏览器界面的多语言显示的方法的流程图;
[0010]图2是示出根据本发明实施例的移动浏览器窗口的方法的流程图;
[0011]图3是示出根据本发明实施例的步骤S202的子步骤的流程图;以及
[0012]图4是示出根据本发明实施例的步骤S202的子步骤的又一流程图。
【具体实施方式】
[0013]下面将详细描述本发明的各个方面的特征和示例性实施例。在下面的详细描述中,提出了许多具体细节,以便提供对本发明的全面理解。但是,对于本领域技术人员来说很明显的是,本发明可以在不需要这些具体细节中的一些细节的情况下实施。下面对实施例的描述仅仅是为了通过示出本发明的示例来提供对本发明的更好的理解。本发明决不限于下面所提出的任何具体配置和算法,而是在不脱离本发明的精神的前提下覆盖了元素、部件和算法的任何修改、替换和改进。在附图和下面的描述中,没有示出公知的结构和技术,以便避免对本发明造成不必要的模糊。
[0014]在传统的网页浏览器中,为了显示不同语言(例如,汉语、英语、法语、日语等)的浏览器界面,网页浏览器提供商必须使用诸如C#、C++之类的编程语言结合诸如JavaScript、VB Script之类的脚本语言编写分别与不同语言相对应的不同版本的浏览器外壳才能实现。这对于网页浏览器提供商而言是非常耗时且成本高昂的。另外,对于用户而言,由于每次从网页浏览器提供商获取网页浏览器的应用程序时都需要同时获取浏览器内核和浏览器外壳,所以当用户期望使用不同语言的浏览器界面时需要从网页浏览器提供商获取浏览器内核和相应语言的浏览器外壳,这是非常耗时且耗费网络资源的。
[0015]本发明提出了这样一种想法,即为了实现浏览器界面的多语言显示,完全采用脚本语言来实现与各种语言相对应的多个版本的浏览器外壳,并且在无需同时向计算设备发送浏览器内核的情况下主动或被动地将用户期望的一个或多个版本的浏览器外壳发送给计算设备(例如,计算机)以供在计算设备上加载。
[0016]图1是示出根据本发明实施例的实现浏览器界面的多语言显示的方法的流程图。如图1所示,该实现浏览器界面的多语言显示的方法包括:S102,计算设备从外部获取并存储与一种或多种语言相对应的一个或多个版本的浏览器外壳,其中该一个或多个版本的浏览器外壳都是完全采用脚本语言实现的;以及S104,当需要显示预定语言的浏览器界面时,计算设备加载与预定语言相对应的一个版本的浏览器外壳而无需重新加载浏览器内核。
[0017]在一个实施例中,在每个版本的浏览器外壳中都设置有用于供用户选择语言的语言选择模块、及用于供用户操控切换浏览器界面的切换触发模块,并且当用户通过语言选择模块及切换触发模块选择预定语言并触发浏览器界面的切换时,计算设备加载与预定语言相对应的一个版本的浏览器外壳。另外,在每个版本的浏览器外壳中还可以设置有效果选择模块,用于当存在与预定语言相对应的具有不同显示效果的多个版本的浏览器外壳时,供用户选择具有期望显示效果的版本的浏览器外壳。
[0018]下面,举例说明根据本发明实施例的实现浏览器界面的多语言显示的方法,其中采用计算机作为计算设备的示例。
[0019]这里假设,网页浏览器提供商采用脚本语言实现了分别与汉语、英语、法语、西班牙语、俄语、朝鲜语、以及日语相对应的多个版本的浏览器外壳,其中,该多个版本的浏览器外壳包括与汉语相对应的具有不同显示效果的三个版本的浏览器外壳、与英语相对应的具有不同显示效果的四个版本的浏览器外壳、与法语相对应的一个版本的浏览器外壳、与西班牙语相对应的一个版本的浏览器外壳、与俄语相对应的一个版本的浏览器外壳、与朝鲜语相对应的一个版本的浏览器外壳、以及与日语相对应的一个版本的浏览器外壳。计算机从网页浏览器提供商处获取了与汉语相对应的具有不同显示效果的三个版本的浏览器外壳、与英语相对应的具有不同显示效果的四个版本的浏览器外壳、以及与法语相对应的一个版本的浏览器外壳,并对这些版本的浏览器外壳进行了存储。
[0020]另外还假设,计算机当前加载的浏览器外壳是与汉语相对应的一个版本的浏览器外壳(为了描述方便,这里称为浏览器外壳C1)。(1)当用户通过语言选择模块及切换触发模块选择法语并触发浏览器界面的切换时,计算机加载与法语相对应的一个版本的浏览器外壳,并且停止运行浏览器外壳C1。(2)当用户通过语言选择模块选择汉语时, 效果选择模块会提示用户计算机中存在与汉语相对应的具有不同显示效果的三个版本的浏览器外壳(为了描述方便,这里称为浏览器外壳C1、C2、C3),然后用户可以通过效果选择模块从浏览器外壳C1-C3中选择具有期望显示效果的浏览器外壳(例如,浏览器外壳C3)。当用户通过效果选择模块选择浏览器外壳C3并通过切换触发模块触发浏览器界面的切换时,计算机加载浏览器外壳C3,并停止运行浏览器外壳C1。(3)当用户通过语言选择模块选择英语时,效果选择模块会提示用户计算机中存在与英语相对应的具有不同显示效果的四个版本的浏览器外壳(为了描述方便,这里称为浏览器外壳E1、E2、E3、E4),然后用户可以通过效果选择模块从浏览器外壳E1-E4中选择具有期望显示效果的浏览器外壳(例如,浏览器外壳E3)。当用户通过效果选择模块选择浏览器外壳E3并通过切换触发模块触发浏览器界面的切换时,计算机加载浏览器外壳E3,并停止运行浏览器外壳C1。(4)当用户通过语言选择模块选择俄语时,语言选择模块会提示用户计算机中不存在与俄语相对应的版本的浏览器外壳。然后,用户可以操纵计算机从网页浏览器提供商处获取与俄语相对应的版本的浏览器外壳,并通过语言选择模块和切换触发模块选择俄语并触发浏览器界面的切换,使得计算机加载与俄语相对应的版本的浏览器外壳。这里需要说明的是,无论加载哪个版本的浏览器外壳或者停止运行哪个版本的浏览器外壳,计算机都不会重新加载浏览器内核或者停止运行浏览器内核。另外,网页浏览器提供商可以自动向计算机更新最近开发出的计算机中已经存在的语言的浏览器外壳的版本。
[0021]在根据本发明实施例的实现浏览器界面的多语言显示的方法中,由于无需连同浏览器内核一起获取浏览器外壳,所以可以节省计算设备获取浏览器外壳所需的时间和网络资源。另外,由于这里的浏览器外壳是完全采用脚本语言实现的,所以可以节省网页浏览器提供商开发浏览器外壳所需的时间且成本。
[0022]这里,具有完全采用脚本语言实现的浏览器外壳的网页浏览器也可以被称为套壳浏览器。在完全采用脚本语言实现浏览器外壳的情况下,用户将无法移动浏览器窗口和/或改变浏览器窗口的尺寸。因此,在计算机完成加载用户选择的任意版本的浏览器外壳(为了便于说明,这里称为浏览器外壳L)后,还需要提供一种在浏览器外壳L被加载的情况下移动浏览器窗口的方法。
[0023]图2是根据本发明实施例的移动浏览器窗口的方法的流程图。如图2所示,该移动浏览器窗口的方法包括:S202,当检测到鼠标事件时,浏览器外壳L判断鼠标事件是否是请求移动浏览器窗口的窗口移位事件;S204,当判断鼠标事件是窗口移位事件时,浏览器外壳L将鼠标事件通知给浏览器内核;及3206,浏览器内核响应于鼠标事件而移动浏览器窗□。
[0024]这里,将鼠标左键在浏览器窗口中单击、鼠标左键在浏览器窗口中单击并且在鼠标左键处于单击状态的同时移动鼠标、鼠标左键在浏览器窗口中双击、鼠标右键在浏览器窗口中单击、鼠标右键在浏览器窗口中单击并且在鼠标右键处于单击状态的同时移动鼠标、鼠标右键在浏览器窗口中双击等动作统称为鼠标事件。将鼠标左键在浏览器窗口中单击、和鼠标左键在浏览器窗口中单击并且在鼠标左键处于单击状态的同时移动鼠标的动作称为鼠标左键单击事件。将鼠标左键在浏览器窗口中双击的动作称为鼠标左键双击事件。将鼠标右键在浏览器窗口中单击的动作称为鼠标右键单击事件。
[0025]这里,不定义指代鼠标右键在浏览器窗口中单击并且在鼠标右键处于单击状态的同时移动鼠标的动作的鼠标右键单击事件、和指代鼠标右键在浏览器窗口中双击的动作的鼠标右键双击事件,因为这里认为这两种鼠标事件不会触发网页浏览器的任何能够被用户感知的动作。
[0026]如果鼠标左键单击事件或鼠标左键双击事件能够使得浏览器窗口移动和/或浏览器窗口的尺寸放大或者缩小,则该鼠标左键单击事件或鼠标左键双击事件是用于请求浏览器内核移动浏览器窗口的窗口移位事件。
[0027]在包括浏览器外壳由诸如C#、C++之类的编程语言结合诸如Java Script、VBScript之类的脚本语言实现的网页浏览器的情况中,存在位于浏览器窗口上侧的工具条、位于浏览器窗口下侧、左侧和右侧的边框。由于浏览器窗口中的工具条和边框是通过诸如C#、C++之类的编程语言实现的,所以鼠标左键在浏览器窗口中的工具条或边框上的单击与移动会使得浏览器外壳移动浏览器窗口或改变浏览器窗口的尺寸(放大或缩小浏览器窗口的尺寸),并且鼠标左键在浏览器窗口中的工具条上的双击会使得浏览器外壳放大或缩小浏览器窗口的尺寸。另外,当鼠标左键在浏览器窗口中的除工具条和边框以外的区域中单击时,如果单击的位置正好是浏览器窗口中的文件链接、功能按钮等会触发浏览器窗口显示新内容的位置,则浏览器窗口将显示不同于当前内容的新内容;相反,如果单击的位置正好是浏览器窗口中的除文件链接、功能按钮等的不会触发浏览器窗口显示新内容的位置,则浏览器窗口的显示内容不会发生改变。
[0028]在浏览器外壳完全由脚本语言实现的网页浏览器的情况中,在浏览器窗口中的任一区域发生的鼠标事件并不必然导致浏览器窗口的移动或尺寸改变,因为浏览器外壳并不能仅通过其自身来实现浏览器窗口的移动或尺寸改变,而需要与浏览器内核配合才能实现浏览器窗口的移动或尺寸改变。在根据本发明的实施例中,需要预先定义浏览器窗口中的预定区域,只有相应的鼠标事件发生在该预定区域中时,浏览器外壳L才能判定该鼠标事件是窗口移位事件并将该鼠标事件通知给浏览器内核,由浏览器内核实现浏览器窗口的移动或尺寸改变。
[0029]图3是根据本发明实施例的步骤S202的子步骤的流程图。如图3所示,在浏览器外壳L检测到鼠标事件后,通过以下处理来判断检测到的鼠标事件是否是窗口移位事件:S2022A,判断鼠标事件是鼠标左键单击事件、鼠标右键单击事件、还是鼠标左键双击事件;S2024A,当判断鼠标事件是鼠标左键单击事件或鼠标左键双击事件时,根据鼠标事件在浏览器窗口上的位置判断鼠标事件是否是窗口移位事件。在一个实施例中,当鼠标事件发生于浏览器窗口上的预定区域中时,浏览器外壳L判断鼠标事件是窗口移位事件。
[0030]图4是根据本发明实施例的步骤S202的子步骤的又一流程图。如图4所示,在浏览器外壳L检测到鼠标事件后,通过以下处理来判断检测到的鼠标事件是否是窗口移位事件:S2022B,判断鼠标事件是否发生于浏览器窗口上的预定区域中;S2024B,当判断鼠标事件发生于预定区域中时,判断鼠标事件是鼠标左键单击事件、鼠标右键单击事件、还是鼠标左键双击事件;以及S2026B,当判断鼠标事件是鼠标左键单击事件或鼠标左键双击事件时,判断鼠标事件是窗口移位事件。
[0031]在一个实施例中,当鼠标事件是鼠标左键单击事件并且是窗口移位事件时,浏览器内核根据该鼠标事件的位置信息和方向信息移动浏览器窗口。具体地,在鼠标事件的位置信息表明鼠标左键在预定区域中的预定位置上单击,并且鼠标事件的方向信息表明在鼠标左键保持单击状态的同时鼠标在预定方向移动的情况下,浏览器内核沿预定方向对浏览器窗口的尺寸进行缩小或放大;在鼠标事件的位置信息表明鼠标左键在预定区域中的预定位置以外的位置上单击,并且鼠标事件的方向信息表明在鼠标左键保持单击状态的同时鼠标在预定方向移动的情况下,浏览器内核沿预定方向移动浏览器窗口。另外,在一个实施例中,当鼠标事件是鼠标左键双击事件并且是窗口移位事件时,浏览器内核 对浏览器窗口的尺寸进行缩小或放大。
[0032]在一个实施例中,预定区域可以包括多个子区域,其中该多个子区域分别位于浏览器窗口的上、下、左、右侧,根据本实施例的移动浏览器的方法还包括:预先设置位于浏览器窗口的上侧和下侧的子区域的高度、以及位于浏览器窗口的左侧和右侧的子区域的宽度。其中,当鼠标左键双击事件发生于浏览器窗口的上侧子区域中时,浏览器内核放大或者缩小浏览器窗口的尺寸;当鼠标左键单击事件发生于浏览器窗口的上侧子区域中时,浏览器内核根据鼠标左键单击事件的方向信息移动浏览器窗口(即,沿着鼠标左键单击事件的方向信息所指示的方向移动浏览器窗口)。当鼠标左键单击事件发生于浏览器窗口的下侧、左侧、或右侧子区域中、或者发生于浏览器窗口的上侧子区域的边缘时,浏览器内核根据鼠标左键单击事件的方向信息放大或者缩小浏览器窗口的尺寸(即,沿着鼠标左键单击事件的方向信息所指示的方向放大或者缩小浏览器窗口的尺寸);当鼠标左键单击事件发生于浏览器窗口的下侧、左侧、或右侧子区域中的任意两个子区域的交叉区域时,浏览器内核根据鼠标左键单击事件的方向信息放大或者缩小浏览器窗口的尺寸(即,沿着鼠标左键单击事件的方向信息所指示的方向放大或者缩小浏览器窗口的尺寸)。
[0033]在一个实施例中,预定区域可以位于浏览器窗口的上侧,并且根据本实施例的移动浏览器窗口的方法还包括:预先设置预定区域的高度。类似地,当鼠标左键双击事件发生于预定区域中时,浏览器内核放大或者缩小浏览器窗口的尺寸;当鼠标左键单击事件发生于预定区域中时,浏览器内核根据鼠标左键单击事件的方向信息移动浏览器窗口或者改变浏览器窗口的大小。
[0034]通过以上描述的根据本发明实施例的移动浏览器窗口的方法,在浏览器外壳完全由脚本语言实现的情况下,可以自由移动和缩放浏览器窗口。
[0035]本领域技术人员将理解,还存在可用于实现本发明实施例的更多可选实施方式和改进方式,并且上述实施方式和示例仅是一个或多个实施例的说明。因此,本发明的范围仅由所附权利要求书限制。
【主权项】
1.一种实现浏览器界面的多语言显示的方法,包括: 计算设备从外部获取并存储与一种或多种语言相对应的一个或多个版本的浏览器外壳,其中所述一个或多个版本的浏览器外壳均是完全采用脚本语言实现的;以及 当需要显示预定语言的浏览器界面时,所述计算设备加载与所述预定语言相对应的一个版本的浏览器外壳而无需重新加载浏览器内核。2.根据权利要求1所述的实现浏览器界面的多语言显示的方法,其特征在于,在每个版本的浏览器外壳中都设置有用于供用户选择语言的语言选择模块、及用于供用户操控切换浏览器界面的切换触发模块,并且 当所述用户通过所述语言选择模块及所述切换触发模块选择所述预定语言并触发浏览器界面的切换时,所述计算设备加载与所述预定语言相对应的所述一个版本的浏览器外壳。3.根据权利要求2所述的实现浏览器界面的多语言显示的方法,其特征在于,在每个版本的浏览器外壳中还设置有效果选择模块,用于当存在与所述预定语言相对应的具有不同显示效果的多个版本的浏览器外壳时,供用户选择具有期望显示效果的版本的浏览器外壳。4.根据权利要求1所述的实现浏览器界面的多语言显示的方法,其特征在于,在所述计算设备完成加载与所述预定语言相对应的所述一个版本的浏览器外壳后,所述一个版本的浏览器外壳通过以下处理来实现浏览器窗口的移动: 在检测到鼠标事件时,判断所述鼠标事件是否是请求移动所述浏览器窗口的窗口移位事件; 当判断所述鼠标事件是所述窗口移位事件时,将所述鼠标事件通知给所述浏览器内核;以及 所述浏览器内核响应于所述鼠标事件而移动所述浏览器窗口。5.根据权利要求4所述的实现浏览器界面的多语言显示的方法,其特征在于,所述一个版本的浏览器外壳判断所述鼠标事件是否是所述窗口移位事件的处理包括: 判断所述鼠标事件是鼠标左键单击事件、鼠标右键单击事件、还是鼠标左键双击事件; 当判断所述鼠标事件是所述鼠标左键单击事件或所述鼠标左键双击事件时,根据所述鼠标事件在所述浏览器窗口上的位置判断所述鼠标事件是否是所述窗口移位事件。6.根据权利要求5所述的实现浏览器界面的多语言显示的方法,其特征在于, 当所述鼠标事件发生于所述浏览器窗口上的预定区域中时,所述一个版本的浏览器外壳判断所述鼠标事件是所述窗口移位事件。7.根据权利要求5所述的实现浏览器界面的多语言显示的方法,其特征在于,所述一个版本的浏览器外壳判断所述鼠标事件是否是所述窗口移位事件的处理包括: 判断所述鼠标事件是否发生于所述浏览器窗口上的预定区域中; 当判断所述鼠标事件发生于所述预定区域中时,判断所述鼠标事件是鼠标左键单击事件、鼠标右键单击事件、还是鼠标左键双击事件;以及 当判断所述鼠标事件是所述鼠标左键单击事件或所述鼠标左键双击事件时,判断所述鼠标事件是所述窗口移位事件。8.根据权利要求6或7所述的实现浏览器界面的多语言显示的方法,其特征在于,当所述鼠标事件是所述鼠标左键单击事件并且是所述窗口移位事件时,所述浏览器内核根据所述鼠标事件的位置信息和方向信息移动所述浏览器窗口。9.根据权利要求6或7所述的实现浏览器界面的多语言显示的方法,其特征在于,当所述鼠标事件是所述鼠标左键双击事件并且是所述窗口移位事件时,所述浏览器内核对所述浏览器窗口的尺寸进行缩小或放大。10.根据权利要求8所述的实现浏览器界面的多语言显示的方法,其特征在于,在所述鼠标事件的位置信息表明鼠标左键在所述预定区域中的预定位置上单击,并且所述鼠标事件的方向信息表明在所述鼠标左键保持单击状态的同时鼠标在预定方向移动的情况下,所述浏览器内核沿所述预定方向对所述浏览器窗口的尺寸进行缩小或放大。11.根据权利要求8所述的实现浏览器界面的多语言显示的方法,其特征在于,在所述鼠标事件的位置信息表明鼠标左键在所述预定区域中的预定位置以外的位置上单击,并且所述鼠标事件的方向信息表明在所述鼠标左键保持单击状态的同时鼠标在所述预定方向移动的情况下,所述浏览器内核沿所述预定方向移动所述浏览器窗口。12.根据权利要求6或7所述的实现浏览器界面的多语言显示的方法,其特征在于,所述预定区域包括多个子区域,所述多个子区域分别位于所述浏览器窗口的上、下、左、右侧,位于所述浏览器窗口的上侧和下侧的子区域具有预先设置的高度,并且位于所述浏览器窗口的左侧和右侧的子区域具有预先设置的宽度。13.根据权利要求6或7所述的实现浏览器界面的多语言显示的方法,其特征在于,所述预定区域位于所述浏览器窗口的上侧,并且所述预定区域具有预先设置的高度。
【专利摘要】本发明提供了一种实现浏览器界面的多语言显示的方法,包括:计算设备从外部获取并存储与一种或多种语言相对应的一个或多个版本的浏览器外壳,其中该一个或多个版本的浏览器外壳均是完全采用脚本语言实现的;以及当需要显示预定语言的浏览器界面时,计算设备加载与预定语言相对应的一个版本的浏览器外壳而无需重新加载浏览器内核。通过本发明,可以节省计算设备获取浏览器外壳所需的时间和网络资源并且可以节省网页浏览器提供商开发浏览器外壳所需的时间且成本。
【IPC分类】G06F17/30
【公开号】CN105488041
【申请号】CN201410468833
【发明人】唐晖宇
【申请人】北京畅游天下网络技术有限公司
【公开日】2016年4月13日
【申请日】2014年9月15日

最新回复(0)