javascript - 因为在 Javascript 中没有加载到 jquery mobile 中的 dom

标签 javascript jquery ajax jquery-mobile

我有一个 page1.html,里面有这样一个链接:

<a href="page2.html">PAGE2</a>

一部分page2.html是这样的:

<html>
<head>
</head>
<body>
<div data-role="page">
</div>
<script src="file1.js"></script>
<script src="file.js"></script>
</body>
</html>

还有这个:

<html>
<head>
</head>
<body>
<div data-role="page">
</div>
<div data-role="page">
<script src="file1.js"></script>
<script src="file.js"></script>
</div>
</body>
</html>

这两个js文件在page2.html上实现了一些功能,但是当通过page1.html导航到page2.html 这两个文件不会工作,但是当使用 data-ajax="false" 完成时它会工作。 怎么了。 脚本应该放在哪里?我需要默认的 ajax 来实现更平滑的转换。

最佳答案

更新

As per your updated question, you can't mix Single Page Model with Multi-Page Model. When you load page2.html first data-role="page and ONLY first one is loaded. Anything else is neglected.

示例:

index.html(第一页加载)- <html> 内的所有标签无论是否启用 Ajax,都会加载到 DOM 中。

<html>
  <head>
    <!-- JS, CSS, etc.. -->
  </head>
  <body>
    <!-- pages -->
  </body>
</html>

page2.html - 除了 FIRST data-role="page" 之外的所有标签都被忽略及其内容,当 Ajax 启用时。

<!-- libraries in head are neglected -->
<head>
  <!-- JS, CSS, etc.. -->
</head>
<body>

<!-- ONLY first page is loaded -->
  <div data-role="page">
   <!-- JS -->
  </div>
<!-- next pages are neglected -->
  <div data-role="page">
  </div>
</body>

当使用单页模型并且启用 Ajax 时,您必须将外部 页面的JS 库/代码放在<div data-role="page"> 中。 .

<div data-role="page">
  <script src="file1.js"></script>
  <script src="file.js"></script>
</div>

jQuery Mobile 通过 Ajax 加载外部页面,它只首先加载 <div data-role="page"><body并忽略 page div 之外的任何其他标签。

关于javascript - 因为在 Javascript 中没有加载到 jquery mobile 中的 dom,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21625225/

相关文章:

javascript - WebGL设置不同的纹理

javascript - Cordova iOS 不响应 touchinput

javascript - ASP.NET C# <asp :Button type ="button"> but still acting like <asp:Button type ="submit">

Jquery 删除类、添加类

php - 使用 javascript 进行可靠的浏览器检测?

javascript - AngularJS:指令模板如何每次更新

jquery 填充单选按钮的 json 数据

javascript - 使用 initSelection ajax 调用选择 2 显示未定义

javascript - jQuery 数组设置键和值并通过 AJAX 发送数组

渲染前显示的 Javascript 代码