防止JQuery-Mobile自动添加div元素

时间:2013-06-20 07:35:42

标签: jquery html5 css3 jquery-mobile

我最初有这样的div元素..

<body>
    <canvas id="pageflip-canvas"></canvas>
    <div id="pages">
        <section>

        </section>
    </div>
<script type="text/javascript" src="index.js"></script>
</body>

但是当我使用JQuery-Mobile运行它就像这样

<body class="ui-mobile-viewport ui-overlay-c">
<div data-role="page" data-url="/C:/AppServ/www/guiBook2/index.html"
 tabindex="0"  class="ui-page ui-body-c ui-page-active" style="min-height: 681px;">
    <canvas id="pageflip-canvas" width="1366" height="681"></canvas>
    <div id="pages">
        <section style="z-index: 1;">

        </section>
    </div>
<script type="text/javascript" src="index.js"></script>

</div><div class="ui-loader ui-corner-all ui-body-a ui-loader-default"><span class="ui-icon ui-icon-loading"></span><h1>loading</h1></div></body>

如何防止它创建这些DIV我可以使用类css

但是额外的div会使内容宽度发生变化。

感谢提前

1 个答案:

答案 0 :(得分:5)

这不可能。如果使用 jQuery Mobile ,它将接管Web应用程序。这是预料之中的,因为 jQuery Mobile 不是经典框架。因为所有内容都是通过ajax完成的,所以每个内容都必须包含在 DIV 中,并使用attribut data-role="page" 。如果 DIV 不存在,就像在这个问题中一样,它将自动创建,并且无法阻止。

有几种方法可以阻止内容使用 jQuery Mobile CSS 设置样式,但没有任何方法可以阻止内容被包含在 { {1}} data-role="page"

如果您想了解有关这些方法的更多信息,请查看我的 ARTICLE ,为了透明,这是我的个人博客。或者找到 HERE 。所有内容都在以下章节中描述:标记增强预防方法

也需要底部DIV-s,因为它们也用于指示页面/内容加载,基本上它是必需的jQuery Mobile组件。但如果关闭 DIV ,则可以将其删除。但是,如果 AJAX 被关闭, jQuery Mobile 的重点是什么。

还有最后一件事要考虑,如果只需要一些jQuery Mobile功能,那么就可以重建框架,因此它只能包含所需的功能。此链接可以在 HERE 找到,不要忘记选择所需的 AJAX 版本。