只隐藏你的CSS中的两个按钮“display:none;”把你的代码放在你的slidingDiv和按钮下面。
你真正应该做的是寻找dom准备好(然后你可以把你的javascript代码放在任何地方 - 当然它应该仍然在页面底部)。
,如果你不wnat自己写的domready中和不要想在你的网页jQuery的,也有很聪明domready中实现,例如this
你会使用它这样的:
domready(function() {
if (document.getElementById('slidingDiv').style.display == 'none') {
alert('none');
}
else {
alert('show');
}
});
编辑: 附加的东西到你的HTML,你可以只设置innerHTML
domready(function() {
var appendDiv = document.getElementById('someDivToAppend');
if (document.getElementById('slidingDiv').style.display == 'none') {
appendDiv.innerHTML('<p>hidden</p>');
}
else {
appendDiv.innerHTML('<p>shown</p>');
}
});
或者你可以使用document.createElement,appendChild三通
domready(function() {
var appendDiv = document.getElementById('someDivToAppend')
, newElement = document.createElement('div')
if (document.getElementById('slidingDiv').style.display == 'none') {
newElement.text = 'hidden';
}
else {
newElement.text = 'shown';
}
appendDiv.appendChild(newElement);
});
使用MDN-DOCS!
你的逻辑有一些问题。如果你更详细地解释你的问题,一定有办法解决。 –
您无法获取尚不存在的内容的引用。您应该从具有'display:none'的div开始(或者在开始时隐藏它),并且只在您准备好时才显示它。 – DaveRandom