0

我正在使用 jQuery Mobile 作为移动框架。我使用 jQuery 用自定义内容动态填充我的页面。jQuery Mobile 不会对页面加载后创建的元素应用样式。出于这个原因,我正在使用

$('[data-role=content]').trigger('create');

所以 jQuery Mobile 在我的新内容创建后重新评估页面样式。

我还使用 SammyJs 加载路由并处理动态内容创建。我发现如果我将trigger(create)内联与我的 JSON 请求放在一起,则代码不起作用。但是,如果我从控制台执行代码(在 JSON 请求和触发器之间添加时间),jQuery 将正确应用样式...

我的解决方法是使用setTimeout

setTimeout(function() {
    $('[data-role=content]').trigger('create');
  }, 100);

但是,我认为这不是最好的解决方案,因为内容在几毫秒内显示为无样式(用户可以看到它),然后用正确的样式刷新......

有没有办法用 jQuery mobile 或 Sammy 监控 DOM 变化?

4

0 回答 0