如何在我在同一行中更改变量值之前使用变量值。 我想要这样的事情:
document.getElementById("id").style.display = this == "none"? "initial" : "none";
取而代之的是"这个"引用该变量的值,而不重复名称/路径或其所谓的。
提前致谢。
答案 0 :(得分:1)
使用变量:
var el = document.getElementById("id");
var display = el.style.display;
el.style.display = display == "none" ? "initial" : "none";
答案 1 :(得分:0)
您可以使用立即调用的函数表达式,以便动态分配变量。使用ES6箭头语法,如下所示:
((t,k) => t[k] = t[k] == "none"? "initial" : "none")
(document.getElementById("id").style, 'display');

A word is <span id="id">not</span> hidden
&#13;
答案 2 :(得分:0)
不确定有哪些要求,但这里有一个示例代码段可以帮助您:
window.onload = function() {
setInterval(function() { // To have some effect on display
document.getElementById("myDiv").style.display =
(function() {
var display = document.getElementById("myDiv").style.display;
return display;
})() // Self invoke
== "none" ? "block" : "none"; // Manage
}, 1000);
}
&#13;
#myDiv {
display: none;
border: 1px solid red;
padding: 20px;
}
&#13;
<div id="myDiv" class="myDivClass" style="display: none">Hello!</div>
&#13;
setInterval(function() { // To have some effect on display
var element = document.getElementById("myDiv");
element.style.display =
(() => {
return element.style.display;
})() // Self invoke
== "none" ? "block" : "none"; // Manage
}, 1000);
&#13;
#myDiv {
display: none;
border: 1px solid red;
padding: 20px;
}
&#13;
<div id="myDiv" class="myDivClass" style="display: none">Hello!</div>
&#13;