我有这个:
<title>MyMobile</title>
<link rel="stylesheet" href="http://code.jquery.com/mobile/1.0/jquery.mobile-1.0.min.css" />
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js" type="text/javascript" charset="utf-8"></script>
<script type="text/javascript" src="http://code.jquery.com/mobile/1.0/jquery.mobile-1.0.min.js"></script>
<title>My Mobile</title>
<style type="text/css">
table { width:100%; }
table caption { text-align:left; }
table thead th { text-align:left; border-bottom-width:1px; border-top-width:1px; }
table th, td { text-align:left; padding:6px;border: inset 1pt}
</style>
如果我手动转到页面,我的表格元素看起来很好。我可以看到边框等。如果我从另一个移动页面获取页面,页面加载正常但表格CSS的东西永远不会被应用。没有风格。打击引用,风格。
发生了什么事?
谢谢。
编辑:不加载我的javascript。刷新。一切都有效。
编辑:如果我点击其他页面的后退按钮,也会这样做。并非所有东西都加载。
答案 0 :(得分:7)
每当你有A标签时,JQM默认使用AJAX来加载这些页面 - 然后忽略除了data data-role = page元素中包含的内容之外的所有内容。
您有3个选项:
您可以告诉JQM始终禁用AJAX(通过设置ajaxEnabled to false)并将页面加载为“普通浏览器” - 这将重新加载所有javascript包含,样式表等...
您可以在ONE .html页面中包含所有不同的div data-role = page,这样JQM在页面之间导航时无需加载任何其他内容
您仍然可以使用AJAX并加载外部文件,但是您需要在DIV本身中包含所有代码(HTML / CSS / JS)。请注意,在此选项中,您需要附加到不同的事件(pageinit / beforeshow / show / hide)而不是$ .ready(因为JQM将处理它,而DOMContentReady实际上不会触发。
您可以在documentation
中阅读有关此内容的所有信息希望这会有所帮助......