- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想切换元素可见性。目前,当点击 button1 时,它只是隐藏,而不是切换。
这是我的代码,我想知道为什么它隐藏后不显示 button2。
function fonk10() {
var x = document.getElementsByClassName("eben")[0];
if (x.style.cssText === "display:none") {
x.style.cssText = "display:inline-block";
} else {
x.style.cssText = "display:none";
}
}
.eben{
background:green;
padding:5px;
display:inline-block;
}
#eben{
background:green;
padding:5px;
display:inline-block;
}
<div id="eben" onclick="fonk10()">BUTTON1</div>
<div class="eben">BUTTON2</div>
最佳答案
您使用的条件始终为 false
。这就是为什么 else
总是在执行的原因。您必须通过在 :
和 ;
最后插入空格来稍微格式化字符串。
改变
if (x.style.cssText === "display:none") {
到
if (x.style.cssText === "display: none;") {
function fonk10() {
var x = document.getElementsByClassName("eben")[0];
if (x.style.cssText === "display: none;") {
x.style.cssText = "display: inline-block";
} else {
x.style.cssText = "display: none";
}
}
.eben{
background:green;
padding:5px;
display:inline-block;
}
#eben{
background:green;
padding:5px;
display:inline-block;
}
<div id="eben" onclick="fonk10()">BUTTON1</div>
<div class="eben">BUTTON2</div>
你也可以像下面这样使用display
属性:
function fonk10() {
var x = document.getElementsByClassName("eben")[0];
if (x.style.display === "none") {
x.style.display = "inline-block";
} else {
x.style.display = "none";
}
}
.eben{
background:green;
padding:5px;
display:inline-block;
}
#eben{
background:green;
padding:5px;
display:inline-block;
}
<div id="eben" onclick="fonk10()">BUTTON1</div>
<div class="eben">BUTTON2</div>
关于javascript - 使用 cssText 切换元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52354471/
我是 javascript 的初学者,如果我的问题很初级,我很抱歉,但我找不到我的代码的解决方案。我想做的是:我有一张带有 href 元素列表的卡片。当用户单击链接时,我会在页面中动态添加其他卡片,然
当我们使用 JavaScript 对单个元素应用大量样式更改时,phpied & Writing Efficient JavaScript (幻灯片 87)建议: instead of applyin
我有一个包含两个框的 html 代码的简单最小示例: 还有一个 css,它使框在默认情况下不可见: .box{ position: absolute; width: 50px; hei
我想切换元素可见性。目前,当点击 button1 时,它只是隐藏,而不是切换。 这是我的代码,我想知道为什么它隐藏后不显示 button2。 function fonk10() { var x = d
我有以下 CSS 片段: .Test-Content { transition: height 2s; } 和以下 HTML 代码: foo 使用纯 JavaScript,我试图改变 div 的高
我有以下两个 cssText 字符串: var s1 = "text-align: right; font-weight: bold;"; var s2 = "text-align: left; co
此处示例:http://jsfiddle.net/7h2Dh/ 得到这个 html: TextContentText 我需要设置div显示属性throught js: document.getElem
我希望重写 element.styleSheet.cssText 函数 element = document.createElement("style"); element.styleSheet.cs
我收到一条错误消息 "Uncaught TypeError: Cannot set property 'cssText' of undefined" 我的代码: var div = $('.postI
过去,我已经能够通过内联样式标签修改页面上的 CSS。我知道这听起来很可怕,但它适用于在处理一种所见即所得(虽然不是文本)时自定义 CSS 编写。 我曾经做过这样的事情: tag.styleSheet
对于给定的元素或选择器,我可以通过遍历 document.styleSheets 获取适用于它的 css 规则。我注意到 Chrome 和 FF 之间的区别是,对于使用 url() 的样式,例如 ur
我正在开发 HTML 编辑器。我得到这样的点击对象: $('#image').click(function(event) { recentSelection = $(this); } 然后我将
在页面重新加载之前,新生成的列表项不会继承 css 样式。通过 cssText 动态添加样式时添加了样式,但它不起作用。 试过 cssText,试过内联 Jquery if (data.succe
我正在尝试编辑 cssRule 的 cssText 属性。我经常看到这样做: Why does altering the height in cssText remove the background
请考虑以下代码片段: Sample Text var md=document.getElementById("mydiv"); md.style.cssText="background-col
类似于以下功能的最佳方法是什么, 适用于所有浏览器及其任何版本,特别是 IE。 var head = document.head || document.getElementsByTagName('
var text = 'cssText: "@font-face { font-family: myFirstFont; src: url(http://fiddle.jshell.net/hites
在我的 CSS 文件中,我有以下代码: .class { color: #fff; } 现在我尝试使用以下方法读取 CSS: document.stylesheets[0].cssRules.cssT
有一个动态创建的标签,我正在将一个额外的 css 连接到它。这是用于动态加载模块的更大框架的一部分。 最初它创建了新的样式标签,但由于著名的“31 样式表限制”,这不再是一个选项,所以我决定回收现有的
请引用this fiddle这说明了问题。 我正在尝试获取 cssText 的属性通过window.getComputedStyle(element) (which returns a CSSSty
我是一名优秀的程序员,十分优秀!