如何通过分离器移动距离?

时间:2013-09-05 04:21:00

标签: jquery asp.net telerik mvp

情境:

我正在使用telerik:RadRotator和splitter。 我在分页器分隔的页面上有3个用户控件。我有这个telerik:RadRotator和垂直分割器在一个控件上水平移动。

问题

现在,我想在移动分割器时调整RadRotator的大小。 我通过这段代码实现了这一点:

function resizing(sender, Args) {
    var rotator = $jQuery(".rrRelativeWrapper");
    var oldRotatorWidth = rotator[0].style.width;
    var width = parseInt(oldRotatorWidth.substr(0, (oldRotatorWidth.indexOf('px') + 1)));
    var newRotatorwidth = (width + (sender._width - width)) - 50;
    rotator[0].style.width = newRotatorwidth.toString() + "px";
}

但问题是我添加的“-50”来调整差异。如果分割器以更高的速度调整大小,则会破坏jquery。

因为我无法在分割器调整大小时获得分割器移动的确切距离。

那么,任何人都可以帮我解决如何获得分离器移动距离的确切差异吗?

注意:我想在事件 OnClientResizing 而不是 OnClientResized 上编写此Jquery。

1 个答案:

答案 0 :(得分:0)

如果您使用多次触发的事件,您可能会遇到竞争条件,事情可能会中断。使用调整大小完成时触发的事件。否则,请在此处查看仅触发处理程序一次的方法:https://stackoverflow.com/a/668185/812369

此外,RadRotator不支持客户端上的维度更改,因此我认为事情不会按预期工作。看看这里有一个方法,一旦你有所需的尺寸就可以工作:http://www.telerik.com/support/kb/aspnet-ajax/rotator/setting-radrotator-s-size-in-percent.aspx