Ibm mobilefirst 带worklight的动态HTML?

Ibm mobilefirst 带worklight的动态HTML?,ibm-mobilefirst,Ibm Mobilefirst,有没有办法在HTML或worklight应用程序中的其他资源中执行最后一分钟的替换 例如,我想根据最终用户的语言环境设置元素的lang和dir属性 一些背景: 我意识到我可以进行动态DOM操作,但我的问题更多地来自客户机-服务器体系结构的背景,您可以在服务器端根据请求者的上下文替换HTML或其他资源中的一些变量等。我们已经有了一个现有的应用程序,我正在研究如何将其与worklight集成,包括出于性能原因,将文件从服务器端移动到客户端,而不会对当前代码进行太多重构。任何基本的DOM操作都会有所帮

有没有办法在HTML或worklight应用程序中的其他资源中执行最后一分钟的替换

例如,我想根据最终用户的语言环境设置元素的lang和dir属性

一些背景:


我意识到我可以进行动态DOM操作,但我的问题更多地来自客户机-服务器体系结构的背景,您可以在服务器端根据请求者的上下文替换HTML或其他资源中的一些变量等。我们已经有了一个现有的应用程序,我正在研究如何将其与worklight集成,包括出于性能原因,将文件从服务器端移动到客户端,而不会对当前代码进行太多重构。

任何基本的DOM操作都会有所帮助。下面是一个使用D3.js的示例

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title>D3 Test</title>
        <script type="text/javascript" src="d3.js"></script>
    </head>
    <body>
        <script type="text/javascript">
            d3.select("html").attr("lang","en_EN");
        </script>
    </body>
</html>
更新:根据对您问题的编辑,我认为以下内容不会对您的应用程序产生任何重大影响。因为你说你可以将文件从服务器移动到客户端,这就意味着像网络流量一样,对于今天的设备,我怀疑这甚至可能是性能的提升,而不是惩罚

我的建议是,如果以上是你计划做的,那么试试下面的方法

我甚至不知道你还能从服务器上做什么——从服务器上根据用户的本地设备更改应用程序的UI。对我来说远程这么做没有多大意义

为了回答您的问题,我将提供一些背景信息,我认为这些信息与我所看到的这种场景中良好的用户体验相关:

默认情况下,一旦框架完成加载,Worklight将关闭初始屏幕

但是,如果您使用的是Worklight 6.2,那么您可以使用扩展的启动屏幕功能来显示较长时间的启动屏幕,在这段时间内,您可以执行所需的任务,例如根据用户的区域设置更改UI。完成后,您可以通过编程自行关闭启动屏幕

阅读材料:

培训模块幻灯片29 JS和本机支持的用户文档主题 例如:

您需要在common\js\initOptions.js中取消注释以下内容:

// # To disable automatic hiding of the splash screen uncomment this property and use WL.App.hideSplashScreen() API
//autoHideSplash: false,
然后,您可以在准备就绪时关闭启动屏幕:

function wlCommonInit() {
    function changeUiBasedOnLocale();
    ...
    ...
}

function changeUiBasedOnLocale() {
    ... // get device local
    ... // use JS to alter CSS
    WL.App.hideSplashScreen();
}

没错,但在应用程序的上下文中,您需要创建良好的用户体验。关于这个问题,请看我自己的答案。谢谢,如果有必要,我将使用DOM操作。我为我的上述问题添加了一些背景/背景。顺便说一句,根据ibm的社交指南,您可能应该只提及这个名字,而不是ibm的rl实习生;谢谢你,艾达。将记住启动屏幕。将在stackoverflow允许的一个月内更改我的显示名称。名称为Idan。我根据你对问题的编辑编辑了这些问题。抱歉,伊丹。当我说move时,我的意思是我将把我的资源html、js、css作为捆绑在本机应用程序中的资产,而不是让网络服务器获取和提供它们。这肯定是本地应用程序所需要的特性吗?总的来说,我的问题源于范式的转变。我试图让我的头脑明白,与本机应用捆绑在一起的html、css和js资产本质上是静态的。也就是说,在它们显示在嵌入式浏览器中之前,您没有机会对它们进行编程操作。您可以在其中包含所有相关的代码,并根据场景调用相关的代码块。。。