我需要帮助让Ariel Flesler的jquery scrollTo插件工作。如果我执行以下操作,我可以让它工作得很好(注意:这是一个Web表单站点,因此jquery包含在母版页中):
<head>
<script type="text/javascript" src="Scripts/jquery.scrollTo.min.js"></script>
<script type="text/javascript">
jQuery(function ($) {
var $paneTarget = $('#pane-target');
$('#ctl00_DetailsBoxHolder_LinkButton5').click(function () {
var $target = $paneTarget.find('#div14');
$paneTarget.stop().scrollTo($target, 800);
});
});
</script></head>
...
...
<ul>
<li>
<asp:LinkButton ID="LinkButton5" runat="server">
jQuery object</asp:LinkButton></li>
</ul>
<div id="pane-target">..bunch of elements...
<ul>..bunch more elements...
<li><div id="div14">etcetc</div></li>
..bunch more elements...</li>
</ul>
</div>
好的,这样才行 - 太好了!但是,我不想立即绑定到按钮单击事件,因为在实践中我有一个转发器,我需要单击转发器元素来触发scrollTo函数。所以我删除了脚本块中的click绑定,并将OnClientClick添加到了我的链接按钮。我认为以下工作会很好:
<head>
<script type="text/javascript" src="Scripts/jquery.scrollTo.min.js"></script>
<script type="text/javascript">
function dosomescrolling() {
var $paneTarget = $('#pane-target');
var $target = $paneTarget.find('#div14');
$paneTarget.stop().scrollTo($target, 800);
}
</script></head>
...
...
<ul>
<li>
<asp:LinkButton ID="LinkButton5" runat="server" OnClientClick="dosomescrolling();">
jQuery object</asp:LinkButton></li>
</ul>
<div id="pane-target">..bunch of elements...
<ul>..bunch more elements...
<li><div id="div14">etcetc</div></li>
..bunch more elements...</li>
</ul>
</div>
都能跟得上!我收到以下错误:
$paneTarget.stop(...).scrollTo is not a function
是什么?
答案 0 :(得分:0)
我很想听到一个更好的解决方案但是(我找不到太多关于此的文档)看起来jQuery插件在OnClientClick触发时根本就没有加载。为了缓解这种情况,我只是将整个插件代码移动到我的OnClientClick函数中,这解决了问题