Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/304.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# ASP.net AJAX动画的多目标控件?_C#_Asp.net_Asp.net Ajax - Fatal编程技术网

C# ASP.net AJAX动画的多目标控件?

C# ASP.net AJAX动画的多目标控件?,c#,asp.net,asp.net-ajax,C#,Asp.net,Asp.net Ajax,我正在尝试将相同的动画应用于多个TargetControlID——例如,在模式对话框中,我希望在右上角有一个取消按钮和一个小“x”图形,这两个按钮都会关闭对话框 写两个相同的动画似乎很不雅观,每个目标对应一个。我想要一个,并将其应用于两个控件 知道我的意思吗?有什么想法吗?听起来你想使用UpdateProgress控件。它可以连接到一个UpdatePanel,用于你在那里的任何按钮 (或者我误解了你的意思)动画扩展程序(通过JavaScript)向目标控件添加一个单击处理程序来启动动画。一种简单

我正在尝试将相同的动画应用于多个TargetControlID——例如,在模式对话框中,我希望在右上角有一个取消按钮和一个小“x”图形,这两个按钮都会关闭对话框

写两个相同的动画似乎很不雅观,每个目标对应一个。我想要一个,并将其应用于两个控件


知道我的意思吗?有什么想法吗?

听起来你想使用UpdateProgress控件。它可以连接到一个UpdatePanel,用于你在那里的任何按钮


(或者我误解了你的意思)

动画扩展程序(通过JavaScript)向目标控件添加一个单击处理程序来启动动画。一种简单的方法是在第二个控件被单击时模拟对目标控件的单击。AjaxControlToolkit包含一个可以帮助您完成此操作的函数

将此javascript添加到您的页面。设置第二个控件的“onclick”以调用此函数:

function secondControlClick() {
    $common.tryFireEvent(yourtargetcontrol, 'click');
}
让我知道这对你有什么好处

加布里埃尔。。。两年后

因此,诀窍在于按照您的猜测更改动画的TargetControlId属性。虽然它不像jQuery的
$[“#MyControl”]那么简单语法可以完成

javascript对象上有两个隐藏属性,您需要使用它们。特别是_onHoverOver、_动画和_目标属性

例如,假设您有一个按钮,如果有人将鼠标悬停在该按钮上,您希望调整其大小,您需要创建动画扩展程序和两个javascript调用,这些调用在onmouseover事件中引用:

  <ajaxToolkit:AnimationExtender id="aeAnimateClaimButtons"
    runat="server" BehaviorID="showHover" TargetControlID="ctlNonExistent" >
    <Animations>
      <OnHoverOver>
        <Sequence Duration=".4">
          <Resize Width="500" Height="100" Unit="px" />
        </Sequence>
      </OnHoverOver>
      <OnHoverOut>
        <Sequence Duration=".4">
          <Resize Width="200" Height="100" Unit="px" />
        </Sequence>
      </OnHoverOut>
    </Animations>
  </ajaxToolkit:AnimationExtender>

然后您需要创建您的函数:

  <script type="text/javascript">
    function hoverOverButton(senderId) {
      var ae = $find("aeAnimateClaimButtons");
      ae._onHoverOver._animation._target = $get(senderId);
      ae._onHoverOver.play();
    }

    function hoverOutButton(senderId) {
      var ae = $find("aeAnimateClaimButtons");
      ae._onHoverOut._animation._target = $get(senderId);
      ae._onHoverOut.play();
    }
  </script>

功能悬停按钮(senderId){
变量ae=$find(“aeAnimateClaimButtons”);
ae.\u onHoverOver.\u animation.\u target=$get(senderId);
ae._onHoverOver.play();
}
函数HOVERETON(senderId){
变量ae=$find(“aeAnimateClaimButtons”);
ae.\u onHoverOut.\u animation.\u target=$get(senderId);
ae._onHoverOut.play();
}
然后按下按钮:

<input type="button" onmouseover="hoverOverButton(this)" onmouseout="hoverOutButton(this)" />

这里有一句警告的话。CTL不存在的东西可能会使您的页面抛出异常。这只是一个例子来说明这一原则。我也不知道_变量是否会消失。在我看来,它们不像是公共API的东西