的問題是,幾乎所有在createWrapp
您的變數是暗示全球。對clock()
的連續調用將覆蓋它們,並且只有最後創建的時鐘打勾。使用var
statements!
將其更改爲:
function clock() {
var outerDiv = createElementWithClass('div', 'clock-window-wrapper'),
innerDiv = createElementWithClass('div', 'clock-menubar-wrapper');
outerDiv.appendChild(innerDiv);
document.getElementById("page-content-wrapper").appendChild(outerDiv);
var clock_windows_wrapper_close = createElementWithClass('div', 'close');
innerDiv.appendChild(clock_windows_wrapper_close);
var clock_toolbar_wrapper_close = createElementWithClass('div', 'clock-content-wrapper');
outerDiv.appendChild(clock_toolbar_wrapper_close);
var hours = createElementWithClass('ul', 'clock-digit-wrapper hour');
clock_toolbar_wrapper_close.appendChild(hours);
clock_toolbar_wrapper_close.appendChild(document.createTextNode(' ')); // Add this ##WTF
var minutes = createElementWithClass('ul', 'clock-digit-wrapper minute');
clock_toolbar_wrapper_close.appendChild(minutes);
clock_toolbar_wrapper_close.appendChild(document.createTextNode(' ')); // And this ##
var seconds = createElementWithClass('ul', 'clock-digit-wrapper second');
clock_toolbar_wrapper_close.appendChild(seconds);
var hour1 = createElementWithClass('li', "clock-digit-four");
var hour2 = createElementWithClass('li', "clock-digit-one");
hours.appendChild(hour1);
hours.appendChild(hour2);
var minute1 = createElementWithClass('li', "clock-digit-three");
var minute2 = createElementWithClass('li', "clock-digit-three");
minutes.appendChild(minute1);
minutes.appendChild(minute2);
var sec1 = createElementWithClass('li', "clock-digit-three");
var sec2 = createElementWithClass('li', "clock-digit-seven");
seconds.appendChild(sec1);
seconds.appendChild(sec2);
createWrapp
作爲一個獨立的功能實際上是沒有必要的,因爲它僅調用一次,沒有變量是本地的。
請在這裏發佈您的實際代碼。 – Bergi 2013-02-13 00:06:28