gpt4 book ai didi

javascript - Dojo 切换器无法与显示屏配合使用 : none

转载 作者:行者123 更新时间:2023-11-28 18:30:26 24 4
gpt4 key购买 nike

这是一个有效的示例:

<html>
<head>

<script type="text/javascript" src="dojo/dojo.js">
</script>
<script language="javascript" type="text/javascript">
require(["dojo/dom","dojo/fx/Toggler","dojo/topic","dojo/domReady!"],

function(dom,Toggler,topic){
var toggler = new Toggler ({
node: "test"
});
alert("something");
toggler.hide();

});
</script>
</head>
<body>
<div id="test">This is just a test.</div>
</body>
</html>

当我将 display: none 添加到我的 div (并使用 toggler.show())时,它停止工作。这是不起作用的示例:

<html>
<head>

<script type="text/javascript" src="dojo/dojo.js">
</script>
<script language="javascript" type="text/javascript">
require(["dojo/dom","dojo/fx/Toggler","dojo/topic","dojo/domReady!"],

function(dom,Toggler,topic){
var toggler = new Toggler ({
node: "test"
});
alert("something");
toggler.show();

});
</script>
</head>
<body>
<div id="test" style="display:none">This is just a test.</div>
</body>
</html>
<小时/>

问题:

  • 为什么会发生这种情况?
  • 我使用 dojo 或其切换器模块的方式是否存在根本性错误?
  • 什么是切换器的替代方案(如果有),我可以将其与 display: none 一起使用?
<小时/>

注意:

我已经检查了各种可能重复的链接,但它们都提供了如下所述的解决方法:-

  • 使用 dojo.style("test","display","") 可以,但在复杂的项目中它会扰乱对齐等。
  • 删除 display:none 或将其替换为 visibility: hide 对我来说不是一个选择。它有效,但如果存在实际的解决方案,我想避免使用变通办法。

最佳答案

切换动画使用 fadeIn 和 fadeOut 函数来更改节点的可见性。这又会更新节点的不透明度。这意味着,节点仍然存在,只是不可见。

当您使用切换器显示时,将显示设置为无不会更新。另外,设置display属性可以让其他节点占据当前节点的位置。

所以,你需要决定你想要什么。无论您想使用 Toggler 还是使用 dojo.style。如果您希望继续使用 Toggler,则需要将不透明度设置为 0,而不是显示。

关于javascript - Dojo 切换器无法与显示屏配合使用 : none,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38127193/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com