【发布时间】:2014-08-04 15:42:13
【问题描述】:
在我的插件中,一些元素会关闭侧边栏。例如,如果在侧边栏中有一个列表:
<ul>
<li>element 1</li>
<li>element 2</li>
<li>element 3</li>
</ul>
li 元素会触发关闭动画。
我的问题是,如果某些元素是异步加载的,插件将不会“看到”这些元素并且不会触发动画。
不仅仅是AJAX,我说的是所有动态加载的元素!
代码很简单,这里有一个例子:
var $elements = 'li';
$elements.click(function() {
$sidebar.animate({
//animation
});
});
如何使这些元素对插件可见?
这里有完整的代码https://github.com/dcdeiv/simple-sidebar/blob/master/jquery.simplesidebar.js
【问题讨论】:
-
大多数插件要么 1) 使用委托事件,所以可以正常工作,或者 2) 他们有一个
refresh你调用的选项(这个插件似乎没有),或者 3) 你必须重新运行它们(有时在清理它们可以进行的初始重新格式化之后)或 4)它永远不会工作并且需要重写。
标签: javascript jquery asynchronous jquery-plugins