javascript - 在显示上执行过渡效果 :none element with hack

标签 javascript jquery

我想顺利显示div来自display:nonedisplay:block 。我知道 display:none 无法做到这一点,所以我首先尝试申请display:block然后执行转换,但这不起作用。

HTML

<input type="text" class="inp">
<div class="div"></div>

CSS

.div {
  display: none;
  visibility: hidden;
  opacity: 0;
  height: 100px;
  width: 100px;
  background: #000;
  transition: 2s;
}
.block {
  display:block;
}
.div-focused {
  visibility: visible;
  opacity: 1;
  transition: 2s;
}
.one {
  background: #ff0;
}

jQuery*

$(document).ready(function() {
    $(".inp").on("keyup", function () {
       if ( !$(this).val() ) {
           $(".div").removeClass("one");
       }
       else {
           $(".div").addClass("block");
           $(".div").addClass("div-focused");
           $(".div").addClass("one");
       }
    });
});

这是jsfiddle

最佳答案

$(document).ready(function() {
$(".inp").on("keyup", function () {
   if ( !$(this).val() ) {
       $(".div").removeClass("one");
   }
   else {
       $(".div").addClass("block");
         $(".div").addClass("one");
           $(".div").animate({opacity: "1"},500);
   }
  });
});

jsfiddle 试试这个

关于javascript - 在显示上执行过渡效果 :none element with hack,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43199124/

相关文章:

javascript - 为什么第一个日期没有被添加到数组中

javascript - JavaScript 和浏览器中如何处理循环引用?

javascript - 如何中断表单发布,直到按下确认按钮?

javascript - 本地图很小时,如何使 Google map 中的版权文本换行?

javascript - 递归循环 JavaScript 后使用自定义 HTML 元素作为 JSON 键变量

javascript - 单击 div 外部的按钮时更改 div 内容,但在单击之前将其中一个内容设置为可见

javascript - 使用 laravel 编译模板 : Component template requires a root element, 而不仅仅是 vue.js 中的文本时出错

javascript - 我正在使用 Jquery 来定位我的 Logo 的 "src"属性,

javascript - 在单击之前禁用 iframe 上的滚动?

javascript - 调整大小后 Google map 不会更新