我有以下代码来平滑collapsiblepanel上的动画,它的工作非常出色:
<script type="text/javascript">
function pageLoad(sender, args) {
smoothAnimation();
}
function smoothAnimation() {
var collPanel = $find(("<%= CollapsiblePanelExtender.ClientID %>"));
collPanel._animation._fps = 30;
collPanel._animation._duration = 0.5;
}
</script>
现在,我还有一个listview,与上面的面板分开,在每个项目中都有一个可折叠的面板扩展器。我想将“smoothAnimation()”函数应用于它们中的每一个,但我不知道如何做到这一点,因为数据绑定为每个项目提供了唯一的ID。
有人知道如何在javascript中解决这个问题吗?非常感谢任何帮助。
答案 0 :(得分:2)
使用OnItemCreated事件,并使用以下内容:
protected void ListItems_Created(object sender, ListViewItemEventArgs e)
{
CollapsiblePanelExtender cpe = (CollapsiblePanelExtender)e.Item.FindControl("collapsePanelID");
cpe.Attributes.Add("onload", cpe.ClientID + "._animation._fps = 30;");
cpe.Attributes.Add("onload", cpe.ClientID + "._animation._duration = 0.5;");
}
此代码尚未经过测试,但您需要完成此操作。