生成级联样式表代码的方法及装置的制造方法_4

文档序号:9375327阅读:来源:国知局
{}"的内容。
[0235] 其中,在样式描述代码中还存在一种不需要在声明代码中声明的代码,但是需要 在编译时按照预设的编译规则进行处理的代码,即嵌套格式的代码。
[0236] 例如:
[0237]
[0238] 其中,logo为header对象的子对象。
[0239] 针对这种子对象的描述,在原生CSS代码中需要对这类子对象的描述单独进行。 而在编写通过面向对象的方式开发的待编译的CSS代码时,编程人员可以将属于该对象的 全部内容编写于该对象的编写区域内。
[0240] 相应的,上述实例中对应的原生CSS代码为:
[0241]
[0242] 在步骤603中,删除包含子对象的对象中的嵌套格式的代码。
[0243] 本公开实施例通过对待编译的CSS代码中的声明代码对待编译的CSS代码中的样 式描述代码进行编译,将待编译的CSS代码还原为原生的CSS代码。可以在后续对CSS代 码的维护过程中直接修改声明代码即可对完整的CSS代码进行维护,无需修改完整的CSS 代码,提高编写后的CSS代码的可维护性和维护效率。
[0244] 对应于上述示例性实施例提供的生成级联样式表代码的方法,本公开另一示例性 实施例提供了一种生成级联样式表代码的装置,参见图7,该装置包括:
[0245] 获取模块701,用于获取待编译的级联样式表CSS代码,待编译的CSS代码中包括 声明代码以及样式描述代码。
[0246] 编译模块702,用于根据获取模块701获取到的声明代码以及声明代码对应的代 码编译规则对样式描述代码进行编译,生成样式描述代码对应的原生CSS代码。
[0247] 其中,如图8所示,编译模块702,包括:
[0248] 第一查找子模块7021,用于在样式描述代码中查找到变量时,在声明代码中查找 变量的变量值。
[0249] 第一替换子模块7022,用于将变量的变量值替换第一查找子模块7021查找到的 变量。
[0250] 其中,第一替换子模块7022用于:
[0251] 在包含变量的语句中检测到了运算式时,根据运算式对变量的变量值进行运算; 并将运算后的变量值替换查找到的变量。
[0252] 其中,如图8所示,编译模块702,包括:
[0253] 第二查找子模块7023,用于在样式描述代码中查找到函数时,在声明代码中查找 函数的函数体。
[0254] 检测子模块7024,用于检测第二查找子模块7023查找到的函数中是否携带自定 义函数变量值。
[0255] 第二替换子模块7025,用于在检测子模块7024检测到函数中未携带自定义函数 变量值时,将第二查找子模块7023查找到的函数的函数体替换函数,并使用函数的默认函 数变量值。
[0256] 第三替换子模块7026,用于在检测子模块7024检测到函数中携带自定义函数变 量值时,将第二查找子模块7023查找到的函数的函数体替换函数,并将自定义函数变量值 替换函数的函数体中的默认函数变量值。
[0257] 其中,如图8所示,编译模块702,包括:
[0258] 第三查找子模块7027,用于在样式描述代码中查找到继承类的对象时,在声明代 码中查找类的类体内容。
[0259] 第一添加子模块7028,用于将第三查找子模块7027查找到的类的类体内容添加 入继承类的对象中。
[0260] 其中,如图8所示,编译模块702,包括:
[0261] 获取子模块7029,用于在声明代码中检测到导入文件的代码时,根据导入文件的 代码中的路径获取待导入的代码文件。
[0262] 第二添加子模块70210,用于将获取子模块7029获取到的待导入的代码文件中的 代码添加入待编译的CSS代码中。
[0263] 其中,如图8所示,编译模块702,包括:
[0264] 生成子模块70211,用于在样式描述代码中检测到了嵌套格式的代码时,根据嵌套 格式的代码中描述的子对象以及包含子对象的对象,生成子对象的描述代码。
[0265] 删除子模块70212,用于删除包含子对象的对象中的嵌套格式的代码。
[0266] 值得说明的是,上述如图8所示的附图,介绍了编译模块702的5种实现形式。为 了简化附图描述,将该5种实现形式在同一附图中表现,结合上述文字描述,不同实现形式 的模块间不存在相互通信关系,则在相应的附图中不同实现形式的编译模块702,独立成一 个小整体,与其余四种实现形式不存在相互通信关系,故其之间不通过连线进行连接。
[0267] 本公开实施例中的图7至图9所示的装置,用于实现上述图1至图6所示的方法流 程,本公开实施例中所示的装置的相关内容描述与上述方法流程中的相关内容描述相同。
[0268] 本公开实施例通过对待编译的CSS代码中的声明代码对待编译的CSS代码中的样 式描述代码进行编译,将待编译的CSS代码还原为原生的CSS代码。可以在后续对CSS代 码的维护过程中直接修改声明代码即可对完整的CSS代码进行维护,无需修改完整的CSS 代码,提高编写后的CSS代码的可维护性和维护效率。
[0269] 对应于上述示例性实施例提供的生成级联样式表代码的控制装置,本公开另一示 例性实施例提供了一种终端900,参见图9。例如,终端900可以是移动电话,计算机,数字 广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理,终端 等。可选地,终端900还可以是智能路由器、智能空气净化器、智能净水器、智能摄像头等。
[0270] 参照图9,终端900可以包括以下一个或多个组件:处理组件902,存储器904,电 力组件906,多媒体组件908,音频组件910,输入/输出(I/O)的接口 912,传感器组件914, 以及通信组件916。
[0271] 处理组件902通常控制终端900的整体操作,诸如与显示,电话呼叫,数据通信,相 机操作和记录操作相关联的操作。处理组件902可以包括一个或多个处理器920来执行指 令,以完成上述的方法的全部或部分步骤。此外,处理组件902可以包括一个或多个模块, 便于处理组件902和其他组件之间的交互。例如,处理组件902可以包括多媒体模块,以方 便多媒体组件908和处理组件902之间的交互。
[0272] 存储器904被配置为存储各种类型的数据以支持在终端900的操作。这些数据的 示例包括用于在终端900上操作的任何应用程序或方法的指令,联系人数据,电话簿数据, 消息,图片,视频等。存储器904可以由任何类型的易失性或非易失性存储设备或者它们的 组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除 可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪 存储器,磁盘或光盘。
[0273] 电力组件906为终端900的各种组件提供电力。电力组件906可以包括电源管理 系统,一个或多个电源,及其他与为终端900生成、管理和分配电力相关联的组件。
[0274] 多媒体组件908包括在所述终端900和用户之间的提供一个输出接口的屏幕。在 一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板, 屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传 感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动 作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多 媒体组件908包括一个前置摄像头和/或后置摄像头。当终端900处于操作模式,如拍摄 模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置 摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
[0275] 音频组件910被配置为输出和/或输入音频信号。例如,音频组件910包括一个 麦克风(MIC),当终端900处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风 被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器904或经由通 信组件916发送。在一些实施例中,音频组件910还包括一个扬声器,用于输出音频信号。
[0276] I/0接口 912为处理组件902和外围接口模块之间提供接口,上述外围接口模块可 以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁 定按钮。
[0277] 传感器组件914包括一个或多个传感器,用于为终端900提供各个方面的状态评 估。例如,传感器组件914可以检测到终端900的打开/关闭状态,组件的相对定位,例如 所述组件为终端900的显示器和小键盘,传感器组件914还可以检测终端900或终端900 一个组件的位置改变,用户与终端900接触的存在或不存在,终端900方位或加速/减速和 终端900的温度变化。传感器组件914可以包括接近传感器,被配置用来在没有任何的物 理接触时检测附近物体的存在。传感器组件914还可以包括光传感器,如CMOS或C⑶图像 传感器,用于在成像应用中使用。在一些实施例中,该传感器组件914还可以包括加速度传 感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
[0278] 通信组件916被配置为便于终端900和其他设备之间有线或无线方式的通信。终 端900可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它
当前第4页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1