对于网页上的每个复选框,我将其替换为从 jsfiddle.net/gnQUe/170/ 借来的滑块
这是通过在加载文档时遍历元素来完成的。
现在的问题是,当通过 ajax 加载更多内容时,新的复选框不会被转换。
为了解决这个问题,我使用 AjaxComplete 事件再次遍历所有元素并将复选框替换为滑块。现在问题发生了,已经被替换的元素,得到了两个滑块。为避免这种情况,我检查复选框是否隐藏并且下一个元素是类“slider-frame”的 div,然后不处理重新处理元素。
但我也有很多其他这样的控件,我想我不是唯一一个有这个问题的人。还有其他简单的方法吗?
存在 jQuery live/on( http://api.jquery.com/on/ ) 事件,但它需要一个事件作为参数?而我想在渲染控件时更改控件的外观。
另一个相同问题的示例是使用 jQuerys 自动完成插件扩展一些通过 ajax 加载的控件。
除了更改元素上的某些属性之外,是否有更好的方法来完成此操作。
总而言之,在文档加载时,我想处理 DOM 中的每个元素,但是当通过 ajax 加载更多元素时,我只想更改新元素。