盒影赢了';";无”;在JavaScript中
我的目标是有一个显示内容的div,单击后有一个方框阴影。然后我想再次单击div以隐藏内容和框阴影。除了在我的第二个函数中将框阴影设置为“无”时单击框阴影后,它就不会被隐藏外,其他一切都很好。为什么这行不通 HTML:盒影赢了';";无”;在JavaScript中,javascript,html,css,Javascript,Html,Css,我的目标是有一个显示内容的div,单击后有一个方框阴影。然后我想再次单击div以隐藏内容和框阴影。除了在我的第二个函数中将框阴影设置为“无”时单击框阴影后,它就不会被隐藏外,其他一切都很好。为什么这行不通 HTML: <div class="col-md-4 top" id="time"> <div class="clickme" id="clickme" onclick="clickme(); return false;"> <p>Click here f
<div class="col-md-4 top" id="time">
<div class="clickme" id="clickme" onclick="clickme();
return false;">
<p>Click here for the time and date!</p>
</div>
</div>
点击这里查看时间和日期
JavaScript:
function clickme(){
document.getElementById("clickme").style.display = 'none';
document.getElementById("time").style.boxShadow = "inset 6em 6em 6em #3B3130";
document.getElementById('time').innerHTML = "<h2 onclick='revert();''>It is " + theTime + " and the date is " + theDate + "</h2>";
}
function revert(){
document.getElementById('time').innerHTML = "";
document.getElementById("clickme").style.display = 'inline';
document.getElementById("time").style.boxShadow = 'none';
}
函数clickme(){
document.getElementById(“clickme”).style.display='none';
document.getElementById(“time”).style.boxShadow=“inset 6em 6em#3B3130”;
document.getElementById('time').innerHTML=“试试这个
document.getElementById("time").style.boxShadow = null;
试试这个
document.getElementById("time").style.boxShadow = null;
这是因为在修改其父级的内部HTML时,您“销毁”了div#clickme
当我稍微移动元素时,看到它工作得很好:
函数clickme(){
var theTime=‘某个时间’;
var theDate=‘某个日期’;
document.getElementById(“clickme”).style.display='none';
document.getElementById(“time”).style.boxShadow=“inset 6em 6em#3B3130”;
document.getElementById('time').innerHTML=“这是因为在修改div#其父级的内部HTML时“销毁”了div#clickme
当我稍微移动元素时,看到它工作得很好:
函数clickme(){
var theTime=‘某个时间’;
var theDate=‘某个日期’;
document.getElementById(“clickme”).style.display='none';
document.getElementById(“time”).style.boxShadow=“inset 6em 6em#3B3130”;
document.getElementById('time')。innerHTML="@Shoms已经在你的代码中发现了错误,但我只是想给你更多的指导。我发现尽可能将逻辑移到CSS中,只使用javascript添加和删除类是很有用的。这里的优点是,你可以轻松地摆弄CSS来改变不同状态下的外观,而无需更改javascript、 这里有一个可能的解决办法
var-box=document.getElementById(“box”);
box.onclick=function(){
if(box.className.indexOf(“单击”)=-1){
box.className=“单击”;
}否则{
box.className=“”;
}
}
#盒子#时间{
显示:无;
}
#box.clicked{
盒影:1米黑色;
}
#box.clicked#firstMessage{
显示:无;
}
#box.clicked#时间{
显示:块;
}
单击此处查看时间和日期
买手表的时间到了
@Shoms已经识别出了代码中的错误,但我只想给您一点指导。我发现尽可能将逻辑移到CSS中,只使用javascript添加和删除类是很有用的。这里的优点是,您可以轻松地摆弄CSS来更改不同状态下的外观,而无需更改ja这里有一个可能的解决方案
var-box=document.getElementById(“box”);
box.onclick=function(){
if(box.className.indexOf(“单击”)=-1){
box.className=“单击”;
}否则{
box.className=“”;
}
}
#盒子#时间{
显示:无;
}
#box.clicked{
盒影:1米黑色;
}
#box.clicked#firstMessage{
显示:无;
}
#box.clicked#时间{
显示:块;
}
单击此处查看时间和日期
买手表的时间到了
Btw。像这样的事情通常是通过类来完成的,而不是通过直接应用样式。可能是由于本节中的双'
导致的?onclick='revert();''>
顺便说一句,如果你真的想取消设置一个内联CSS值,你可以将它设置为一个空白字符串。感谢你的提醒,修复了它,但仍然没有。顺便说一句。像这样的事情通常是使用类来完成的,而不是直接应用样式。可能是由于本节中的双'
导致的?onclick='revert();“”>
顺便说一句,如果你真的想取消设置一个内联CSS值,你可以将它设置为一个空白字符串。谢谢你注意到了这一点,修复了它,但仍然没有成功。非常感谢你!我要学习和玩它,因为我想尽可能多地理解它。非常感谢你!我要学习和玩它,因为我想尽我所能去理解。