只隱藏你的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