gpt4 book ai didi

javascript - 如何通过单击按钮使标题消失并重新出现,并让按钮更改我的页面背景

转载 作者:行者123 更新时间:2023-11-29 18:04:51 26 4
gpt4 key购买 nike

我的 HTML:

    <!doctype html>
<html>
<head>
<title>Public Vision</title>
<link rel="stylesheet" type="text/css" title="backbone" href="backbone.css">
<link rel="alternative stylesheet" type="text/css" title="alt" href="alt.css">
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<script type="text/javascript" src="script.js"></script>
</head>
<body class="style2">
<div id="header" class="style2"><div id="header2" class="style2">Public Vision</div></div>
<iframe width="640" height="400"
src="https://www.youtube.com/embed/videoseries?list=PLX9_I-EOJPdFuOjcI2zkmTck55homHEBE"
frameborder="2" allowfullscreen></iframe>

<input id="showHideContainer" type="image" src="off.jpeg " height="3%" width="2%" alt="On" onclick="toggle()";>

<script>
function toggle(){
$('body').toggleClass('style2');
}
</script>
<script>
document.getElementById('showHideContainer').onclick = function() {
divTest = document.getElementById('header');
if (divTest.style.display === "none") {
divTest.style.display = 'block';
}
else {
divTest.style.display = "none";
}
}
</script>
</body>
</html>

我的 CSS:

     #header {height: 15%; width: 100%; background-color: white; z-index: 2; position: fixed; right:0; top:0;


box-shadow: 0 4px 4px -2px #232323;
-moz-box-shadow: 0 4px 4px -2px #232323;
-webkit-box-shadow: 0 4px 4px -2px #232323;
}

#header2{height: 15%; width: 100%; position: fixed; color:grey; opacity: 0.6; text-align: center; z-index: 4; font-size: 30px; margin-top: 2.5%; background-color:clear;}
iframe {display:block; margin: 0 auto; margin-top: 17%;}


body{
background-color:grey; z-index:3;
}
body.style2{
background-color:white; z-index:3;
}

目前,我现在拥有的图像在单击时会使标题消失。关于如何使图像使标题消失和背景颜色改变的任何想法?真的在这里碰壁。提前致谢!

最佳答案

它不起作用的原因是现在您正在覆盖 JavaScript 中的 onclick 事件。您从 input 元素上的 onclick 开始,然后当您在 JavaScript 中再次设置 onclick 时,它会覆盖您原来的 调用 toggle() 的 onclick

解决此问题的一种方法是使用 event listeners ,它支持将多个函数绑定(bind)到 onclick,但在您的情况下,只需将 toggleClass 添加到您定义的 onclick 中会更容易JS,并删除 input 标签中的那个。下面是一个通过对每个标题使用单个 onclick 函数来切换标题可见性和背景颜色的示例:

工作现场演示:

document.getElementById('showHideContainer').onclick = function () {
divTest = document.getElementById('header');
if (divTest.style.display === "none") {
divTest.style.display = 'block';
} else {
divTest.style.display = "none";
}
$('body').toggleClass('style2');
};
body {
background-color:grey;
z-index:3;
}
body.style2 {
background-color:white;
z-index:3;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="header" class="style2">
<div id="header2" class="style2">Public Vision</div>
</div>
<input id="showHideContainer" type="image" src="http://i.imgur.com/5LGqY2p.jpg?1" height="100" width="100" alt="On" ;>

JSFiddle 版本:https://jsfiddle.net/66cn8L1b/1/

关于javascript - 如何通过单击按钮使标题消失并重新出现,并让按钮更改我的页面背景,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32146295/

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