使用JavaScript更改样式属性

时间:2013-02-16 23:18:27

标签: javascript html

我有一个日历的表格行,我需要根据月份来打开和关闭。

HTML:

<tr id="bottomrow" class="week" valign="top" style="display:none;">
        <td class="day" id="d36">
            <div class="daynumb" id="x36"></div>
        </td>
        <td class="day" id="d37">
            <div class="daynumb" id="x37"></div>
        </td>
        <td class="day" id="d38">
            <div class="daynumb" id="x38"></div>
        </td>
        <td class="day" id="d39">
            <div class="daynumb" id="x39"></div>
        </td>
        <td class="day" id="d40">
            <div class="daynumb" id="x40"></div>
        </td>
        <td class="day" id="d41">
            <div class="daynumb" id="x41"></div>
        </td>
        <td class="day" id="d42">
            <div class="daynumb" id="x42"></div>
        </td>
    </tr>

我尝试使用document.getElementByID('bottomrow').style.display = "none";,但它似乎无法正常工作......

JavaScript的:

function february() {

document.getElementById('bottomrow').style.display = "none";

var numbdays = 28,
    offset = 5;

for (var date = 1; date <= numbdays; date++) {
    document.getElementById("x" + (date + offset)).innerHTML = date;
}
}

页面加载时,该行仍然可见。我做错了什么?

3 个答案:

答案 0 :(得分:1)

你正确地做了,除了getElementByID不是一个功能。它必须是getElementById。请注意小写d

document.getElementById("bottomrow").style.display = "none";

答案 1 :(得分:0)

在DOM准备好之前该函数是否正在运行?它不能对尚不存在的元素进行操作。

window.onload = function ()
{
  ...
} 

答案 2 :(得分:0)

您应该正确使用页面的ready事件,因为DOM元素尚未加载到页面上。 jQuery抽象了这个,但看看这篇文章,关于如何在没有jQuery或其他库的情况下完成它。您需要确保处理以下指南中的浏览器差异。

$(document).ready equivalent without jQuery