Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/42.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
如何将转换效果添加到JavaScript切换菜单?_Javascript_Css - Fatal编程技术网

如何将转换效果添加到JavaScript切换菜单?

如何将转换效果添加到JavaScript切换菜单?,javascript,css,Javascript,Css,我想给一个简单的JavaScript切换移动菜单提供一个平滑的过渡效果(比如容易进入或淡出) 我已经尝试过通过CSS转换效果来实现它,但运气不好,但我确信它可以通过CSS或JavaScript来实现。我认为使用CSS会更好,除非这是不可能的 代码如下: var toggle = document.getElementById("toggle"); var content = document.getElementById("content"); toggle.addEventListener

我想给一个简单的JavaScript切换移动菜单提供一个平滑的过渡效果(比如容易进入或淡出)

我已经尝试过通过CSS转换效果来实现它,但运气不好,但我确信它可以通过CSS或JavaScript来实现。我认为使用CSS会更好,除非这是不可能的

代码如下:

var toggle  = document.getElementById("toggle");
var content = document.getElementById("content");

toggle.addEventListener("click", function() {
  content.style.display = (content.dataset.toggled ^= 1) ? "block" : "none";
});
切换
一些内容。。。

内容应平滑地显示/隐藏,并具有轻松淡入淡出或淡入淡出的效果。怎么可能呢?

您无法设置
显示:无
,因为您完全删除了元素。
相反,您可以尝试组合使用
可见性:可见
-->
可见性:隐藏
,以及
不透明度:1
-->
不透明度:0
您无法设置
显示:无
的动画,因为您完全删除了元素。
相反,您可以尝试组合使用
可见性:可见
-->
可见性:隐藏
,以及
不透明度:1
-->
不透明度:0

这是您需要的解决方案。Jquery使您的任务变得简单易懂

var toggle=document.getElementById(“toggle”);
var content=document.getElementById(“内容”);
$(文档).ready(函数(){
$(“#切换”)。单击(函数(){
$(“内容”).fadeToggle(“慢”);
/*美元(“#div3”)。淡出(3000)*/
});
});
#内容{
宽度:80px;
高度:80px;
背景颜色:蓝色;
}

切换

一些内容…
这是您需要的解决方案。Jquery使您的任务变得简单易懂

var toggle=document.getElementById(“toggle”);
var content=document.getElementById(“内容”);
$(文档).ready(函数(){
$(“#切换”)。单击(函数(){
$(“内容”).fadeToggle(“慢”);
/*美元(“#div3”)。淡出(3000)*/
});
});
#内容{
宽度:80px;
高度:80px;
背景颜色:蓝色;
}

切换

某些内容…
您不能从/淡入
显示:无
。您必须转换
不透明度
使其褪色。您可以使用另一种技术来模拟
显示:无
,如
左:-300vh
,并稍微延迟不透明度转换。您不能从
显示:无
淡入/淡出。您必须转换
不透明度
使其褪色。您可以使用另一种技术来模拟
显示:none
,如
left:-300vh
,并稍微延迟不透明度转换。不,我无法添加jQuery。很抱歉我需要现有代码或类似JavaScript代码的解决方案。不,我不能添加jQuery。很抱歉我需要与现有的代码或类似的JavaScript代码解决方案。
#content{
  display:none;
}
<button id="toggle">TOGGLE</button>
<div id="content">Some content...</div>