jquery - 修改显示/隐藏功能只缩放宽度,不缩放高度?

标签 jquery css events animation function

正如标题所暗示的,我正在使用 jQuery 的显示和隐藏函数来隐藏和显示元素。但是,我不想缩放元素的高度,只缩放宽度。

我在考虑使用 animate 函数,但我不确定这是否是最好的方法。

此外,我不想在 javascript 中设置高度,因为它可能会在标记中发生变化。

理想情况下,我希望发生的情况是,当调用该函数来隐藏一个元素时,对象的宽度从其原始宽度变为 0,并且它的 alpha 下降到 0,然后当我告诉它显示时会发生相反的情况。

最佳答案

您想使用动画功能:

$("div.myElement").animate({width: "toggle"});

动画显示和隐藏方法主要是显示漂亮动画的虚荣方法。通常,您会想要自定义效果。您也可以尝试:

$("div.myElement").animate({width: "toggle", opacity: "toggle"});

以获得相当大的加宽和淡入效果。如果您发现自己一遍又一遍地使用这些动画,您可以将它们包装在一个新的 jQuery 方法中:

$.fn.myShow = function(duration) {
  return this.animate({width: "toggle", opacity: "toggle"}, duration || 1000);
});

$("div.myElement").myShow("slow");

关于jquery - 修改显示/隐藏功能只缩放宽度,不缩放高度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1072112/

相关文章:

CSS:对一些简单的数学感到困惑

javascript - 通过点击事件禁用 div

javascript - 使用选择框动态更新值

JQuery 对话框标题栏和关闭按钮不可见

html - 将 div 元素相互对齐

html - 如何定位 <table#id> 中的第一个 <tr>,而不是 <td><table><td> 中的第一个 <tr>

javascript - 如何获取鼠标输入的元素ID?

java - JMS持久异步事件通知

javascript - JQuery隐藏复选框检查,但不取消检查

jQuery 从列表中获取 img 源属性并推送到数组中