仅应用jquery mobile的一部分页面?

我有一个样本页面,我们设计得非常好。 现在,我们需要使用jquery mobile只占我们页面的一部分。 问题是,当我添加jquery mobile时,它会弄乱我的所有UI内容。 是否有办法将jquery mobile仅应用于页面的一部分?

有几种方法可以实现这一点,你可以在我的其他文章中找到它们,或者在这里找到它。 搜索名为: 标记增强预防方法的章节。

这里有一些简短的描述和例子。 有几种解决方案,您需要选择正确的解决方案:

增强标记的方法:

这可以通过几种方式完成,有时您需要将它们组合以实现所需的结果。

  • 方法1

    它可以通过添加此属性来实现:

    data-enhance="false" 

    标题,内容,页脚容器。

    这也需要在app加载阶段进行调整:

     $(document).one("mobileinit", function () { $.mobile.ignoreContentEnabled=true; }); 

    在jquery-mobile.js初始化之前初始化它(请看下面的例子)。

    有关这方面的更多信息,请访问:

    http://jquerymobile.com/test/docs/pages/page-scripting.html

    示例: http : //jsfiddle.net/Gajotres/UZwpj/

    要再次重新创建页面,请使用以下命令:

     $('#index').live('pagebeforeshow', function (event) { $.mobile.ignoreContentEnabled = false; $(this).attr('data-enhance','true'); $(this).trigger("pagecreate") }); 
  • 方法2

    第二个选项是使用此行手动执行:

     data-role="none" 

    示例: http : //jsfiddle.net/Gajotres/LqDke/

  • 方法3

    可以阻止某些HTML元素进行标记增强:

      $(document).bind('mobileinit',function(){ $.mobile.page.prototype.options.keepNative = "select, input"; }); 

    示例: http : //jsfiddle.net/Gajotres/jjETe/