3

当我将大量 HTML 注入到 DOM 中并使用 Ajax 提取数据时,我会循环遍历数据并根据每个条目注入一些内容。每个注入的元素都是一些<a>带有data-transition='slide'.

问题:目前在我注入的 21 个条目中,只有前 6 个的转换有效。我尝试了几件事,即一次注入所有内容,将所有内容分成小块注入,调用.trigger('create'),或.page()在包含div之后,并在每次注入时调用它,甚至在 for 循环中的每个元素之后添加一个 setTimeout(500) . 注意:对于不起作用的元素,根本没有过渡,甚至没有默认过渡。

简化示例代码:$().ajaxSubmit这在请求 的回调函数中调用,

function populateFeed(data) {
  for (var i = 0; i < data.length; i++) {
    $("#feed").append("<a href='#nextpage' onclick='someFunction()' data-" + 
       "transition='slide'><div>Some content</div></a>");
  }
}

实际代码比这多一点逻辑,但这是核心。那么为什么这仅适用于前 6 个,但感觉 jQM 转换对后者来说是中断的呢?我该如何解决?

更新:在http://jsfiddle.net/Uk5d4/6/ 上复制了类似的效果。靠近底部的链接(即链接 999)没有过渡。

4

1 回答 1

0

完成动态创建 html 后,尝试加载 jqm js。JQM 在第一次加载时转换已经创建的 html。所以如果你之后创建任何东西,它就无法转换它们,因此我们需要再次调用这个 js。

于 2013-07-26T12:43:54.050 回答