gpt4 book ai didi

Javascript - 加载多个函数 onLoad

转载 作者:数据小太阳 更新时间:2023-10-29 05:42:39 25 4
gpt4 key购买 nike

我这周开始学习 javascript,我正在了解基础知识。我已经开始为使用切换开关打开和关闭目标 div 的页面构建一个“常见问题解答”部分。

但是,默认情况下,div 的显示设置为可见。我在其中放置了一个函数,将其设置为隐藏,以便下拉列表在页面加载时折叠。我试过堆叠它们(切换功能和显示功能),在 body 标记的“onLoad”中用分号分隔它们。

现在,在我应用这些函数运行“onLoad”之前,两者都运行良好。然而,现在只有第二个函数可以切换 div,但声明让 div 折叠 onLoad 的函数不起作用。

我哪里出错了?

此外,鉴于我是新手,如果有更好的方法或更简写的版本,请随时告诉我 :)

function toggleOnLoad() {
document.getElementById('dropdown01').style.display = 'none';
}

function toggleFunction() {
var dropDown = document.getElementById('dropdown01');
var dropDownCollapse = document.getElementById('toggle-image').src = "Images/banner_toggle_collapse.png";
var dropDownExpand = document.getElementById('toggle-image').src = "Images/banner_toggle_expand.png";

if (dropDown.style.display != 'none') {
dropDown.style.display = 'none';
document.getElementById('toggle-image').src = dropDownExpand;
} else {
dropDown.style.display = '';
document.getElementById('toggle-image').src = dropDownCollapse;
}

}
css: body {
background-color: #cccccc;
padding: 0;
margin: 0;
}

.container {
margin-left: 20%;
margin-right: 20%;
background-color: white;
padding: 1em 3em 1em 3em;
}

.toggle-header {
padding: 0.5em;
background-color: #0067b1;
overflow: auto;
}

#toggle {
border: none;
width: 300;
height: 3em;
background-color: #0067b1;
outline: 0;
}

.button-container {
float: right;
margin-right: 0.5em;
display: inline-block;
}

.dropdowns {
padding: 2em;
background-color: #eeeeee;
}

HTML & Javascript:
<body onLoad="toggleOnLoad(); toggleFunction()">
<div class="container">
<div class="toggle-header">
<div class="button-container" title="">
<button id="toggle" onClick="toggleFunction()">
<img id="toggle-image" src="" alt="toggle" style="max-height: 100%; max-width: 100%">
</button>
</div>
</div>
<div id="dropdown01" class="dropdowns">
<span>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum</span>
</div>
</div>
</body>

最佳答案

一定要手动创建一个 init 函数。

window.addEventListener("load", myInit, true); function myInit(){  // call your functions here.... }; 

通过这样做,您可以随时调用该组函数。

关于Javascript - 加载多个函数 onLoad,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33785313/

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