onClick()JavaScript可见性更改
onClick() JavaScript visibility change
我对代码编写非常陌生,所以请原谅我的无知。我有一段简单的代码,当用户点击页面上的任何位置时,我想关闭几个"outerCircle"div的可见性。我试过几种方法,但都不起作用。如果有人有什么建议,我将不胜感激。以下是我迄今为止的建议:
<body onload = "startBlink()" onclick = "onOff()">
<p id = "title">Click anywhere to turn the outer circles on or off.</p>
<div class = "container" onclick = "onOff()">
<div class = "outerCircle" id = "outerLeftCircle">
<div class = "innerCircle" id = "innerLeftCircle">
</div>
</div>
<div class = "outerCircle" id = "outerRightCircle">
<div class = "innerCircle" id = "innerRightCircle">
</div>
</div>
</div><!-- Closes the container div -->
<script>
// This function blinks the innerCircle div //
function startBlink(){
var colors = ["white","black"];
var i = 0;
setInterval(function() {
$(".innerCircle").css("background-color", colors[i]);
i = (i+1)%colors.length;
}, 400);
}
// This function turns the outerCircle divs on or off //
function onOff() {
alert("Entering function now");
if (getElementById(".outerCircle").style.visibility = "visible") {
getElementById(".outerCircle").style.visibility = "hidden";
getElementById(".outerLeftCircle").style.visibility = "hidden";
getElementById(".outerRightCircle").style.visibility = "hidden";
} else {
getElementById(".outerCircle").style.visibility = "visible";
getElementById(".outerLeftCircle").style.visibility = "visible";
getElementById(".outerRightCircle").style.visibility = "visible";
}
}
</script>
simple。
function onOff(){
$('.outerCircle').toggle()
}
因此,查看您的代码,您可以修复用 或者,正如@puelo所指出的,你可以使用jQuery而不是原生javascript,它已经加载了,所以为什么不呢,你可以将 NATIVE Javascript:jsFiddle 查询:jsFiddle JQUERY。。。另一种方式:jsFiddle 另一件事是你的 编辑:正如@KjellIvar评论的那样:"或者更好的做法是,将 StackOverflow:我在JavaScript比较中使用哪个等于运算符(==vs===)重要吗? ECMAScript:抽象等式比较算法和严格Equals算子(==)querySelector()
更改所有getElementById()
的问题,因为您为函数getElementById()
提供了一个CSS选择器作为参数,但它正在等待一个id选择器$()
与CSS选择器一起使用:// This function turns the outerCircle divs on or off //
function onOff() {
alert("Entering function now");
if (!document.querySelector("#outerLeftCircle").style.visibility || document.querySelector("#outerLeftCircle").style.visibility == "visible") {
document.querySelector("#outerLeftCircle").style.visibility = "hidden";
document.querySelector("#outerRightCircle").style.visibility = "hidden";
} else {
document.querySelector("#outerLeftCircle").style.visibility = "visible";
document.querySelector("#outerRightCircle").style.visibility = "visible";
}
}
// This function turns the outerCircle divs on or off //
function onOff() {
alert("Entering function now");
if ($("#outerLeftCircle").css("visibility") === "visible") {
$("#outerLeftCircle")[0].style.visibility = "hidden";
$("#outerRightCircle")[0].style.visibility = "hidden";
} else {
$("#outerLeftCircle")[0].style.visibility = "visible";
$("#outerRightCircle")[0].style.visibility = "visible";
}
}
// This function turns the outerCircle divs on or off //
function onOff() {
alert("Entering function now");
if ($("#outerLeftCircle").css("visibility") === "visible") {
$(".outerCircle").css("visibility","hidden");
} else {
$(".outerCircle").css("visibility","visible");
}
}
if
错了,把==
放在=
的后面===
而不是=
"应该比双倍相等快一点,因为这会阻止js引擎执行类型转换。更多信息:
- JavaScript可见性不起作用('隐藏'起作用,'可见'不起作用)
- 使用 Javascript 将 HTML 页面中的默认可见性从可见更改为隐藏
- CSS 中定义的可见性值未显示在 Javascript 中
- 使用javascript的图像可见性
- Javascript - 切换可见性
- 如何在javascript中设置asp:checkbox的可见性
- onClick()JavaScript可见性更改
- 根据弹出窗口javascript的返回值更改asp.net面板的可见性
- 使用Javascript在按键时显示隐藏的可见性文本
- 使用 Javascript 更改 CSS 动画可见性
- 为什么 Javascript 函数调用在从代码隐藏更改可见性后不起作用
- css 可见性属性和 javascript setTimeout 方法出错
- Javascript:使用图标来控制部分内容的可见性
- 如何在 JavaScript 中更改图像可见性
- 使用 JavaScript 复选框事件切换 html 的可见性
- 变量在 Javascript 中的可见性
- JavaScript 函数通过发送下一个元素的整数来更改元素的可见性
- 如何使用增量 + 选项(或可见性)在 JavaScript 上实现可见性
- 样式可见性和JavaScript
- 为什么我的切换可见性javascript函数不起作用