除了通过JavaScript添加动态数据外,还有其他方法可以将动态数据添加到jQuery移动页面吗?

除了通过JavaScript添加动态数据外,还有其他方法可以将动态数据添加到jQuery移动页面吗?,javascript,jquery,html,cordova,jquery-mobile,Javascript,Jquery,Html,Cordova,Jquery Mobile,我最近开始使用jQuery Mobile。我和科尔多瓦一起使用。首先,我正在用SQLite数据库构建一个简单的混合应用程序。我已经阅读了JQM的文档。从我在大多数示例中看到的情况来看,进入页面的数据完全是通过JavaScript提供的,如下图所示: 我有这样一个页面: <div data-role="page" id="home-rh"> <div data-role="header" data-theme="a" class="" data-id="he

我最近开始使用jQuery Mobile。我和科尔多瓦一起使用。首先,我正在用SQLite数据库构建一个简单的混合应用程序。我已经阅读了JQM的文档。从我在大多数示例中看到的情况来看,进入页面的数据完全是通过JavaScript提供的,如下图所示:

我有这样一个页面:

   <div data-role="page" id="home-rh">
        <div data-role="header" data-theme="a" class="" data-id="header" data-position="fixed">
            <h1>My Holiday Calendar</h1>
        </div>
        <div data-role="content" id="myContent">Hello 2</div>
        <div data-role="footer" data-position="fixed" data-id="footer">
            <div data-role="navbar">
                <ul>
                    <li><a href="#home-all">All Holidays</a></li>
                    <li><a href="#" class="ui-btn-active">RH</a></li>
                    <li><a href="#">CH</a></li>
                </ul>
            </div>

        </div>
    </div>
$("#myContent").append('****MY HTML goes here*****');
我的问题:

  • 有没有更好的方法可以在JQM中动态地向我的页面添加内容,而不必像上面那样用JavaScript代码编写HTML并附加它 任何其他良好做法也值得欢迎

    我已经阅读了很多论坛……但我无法理清我的思路。

    编辑:

    起初他问了3个问题,但为了更具体,删掉了另外两个。 @Gajotres对这三个问题都给出了答案。。 这是另外两个

  • 我们在JQM中通过JavaScript添加HTML好吗?如果我的HTML很大,这不是一个问题吗

  • 我敢肯定很多好的应用程序都是在JQuery手机上开发的。。我想知道他们在这种情况下通常使用的一些模式


  • 谢谢

    您可以使用某种模板框架,如handlebar.js或Jade。下面是一个关于jQuery Mobile手柄的教程


    这些都是好问题,但您在这里使用了错误的框架。不要误解我的意思,就像Omar一样,我正在帮助其他人解决jQuery移动问题,但你的问题超出了jQuery移动

  • 有一个更好的方法,但是jquerymobile无法正常使用它。你需要使用一些MVC框架,目前最好的是AngularJS(这是我的主观感受;你也可以使用BackboneJS、KnockoutJS或EmberJS)。AngularJS指令将使这一步几乎毫无痛苦,它将自动完成所有操作,您根本不需要执行任何操作

    只要您有一些数据源(模型),AngularJS就会自动附加页面数据。这是一个很好的方法,但是您需要打开jQuery移动页面路由(它与AngularJS路由不兼容)。这样,您将失去jQuery移动转换

    更好的是AngularJS使用自己的模板引擎(模仿MustacheJS或HandlebarJS)

  • 这是这里最不重要的问题。jquerymobile已经有了一个巨大的DOM印记,无论您以何种方式填充额外的内容都无关紧要。添加额外的内容只需要几秒钟(通常是50毫秒,我两年前做过一些基准测试),但页面增强过程需要更多的时间。所以这是这里最大的问题

    基本上,无论您如何附加数据,更大的问题是附加了多少

  • 如果您想了解好的jQuery移动页面体系结构的秘密,请阅读文章

  • 我的建议是,跳过jquerymobile,使用kendoui,或者爱奥尼亚框架,或者onsenui。KendoUI与jQueryMobile非常相似,但它有自己的MVC框架。它甚至使用jQuery。或者你可以将它与AngularJS一起使用(他们最近也制作了这个版本)


    Ionic和Onsen UI完全是AngularJS驱动的移动框架。它们速度很快,但你需要花一些时间学习AngularJS。

    三个不同的问题合一,太多了,你不这么认为吗?:)@奥马尔:是的,但所有这些问题都是重叠的。所以我认为最好不要把它们作为单独的问题问:)@Omar:同意。将我的问题编辑为只有一个问题:)@Gajotres。。。现在它并不是不合适……)我的建议是,如果你喜欢jQuery,给剑道UI一个机会。过了一段时间,你可以转到剑道UI+AngularJSHey@Gajotres,我的帖子没有链接到你的帖子吗?是的,你的答案链接到我的博客:)Omar和我有专门针对jQuery Mobile的博客。这是Omars的博客:谢谢@unobf.:)这篇文章向我指出了我一直在寻找的东西:)同意@Gajotres。。我以前使用过Ionic和OpenUI5。。两者都很棒:)。。只是想试试JQM。。谢谢你的见解。。是的,我经常访问你的博客,太棒了!