根据布尔条件选择/取消选择的数组

时间:2019-04-01 16:24:28

标签: javascript clock real-time-clock

家庭作业问题,基本上我需要对其进行编码以仅显示所选属性。我提供了几个功能,希望仅完成这些功能。教科书和互联网示例无济于事,因为它们无法处理这种确切的作业。

主要是我不确定如何设置一个获取for循环以查找指定属性的数组。我见过的所有数组都处理数字,而不是布尔条件。

教师将使任何不使用其功能的作业失败。

"use strict";
var $ = function(id) { return document.getElementById(id); };

// the event handler for the click event of each h2 element
var toggle = function() {
    var h2 = this;                    // clicked h2 tag     
    var div = h2.nextElementSibling;  // h2 tag's sibling div tag
    var h2 = document.getElementById(this);

    // toggle plus and minus image in h2 elements by adding or removing a class
    if (h2.hasAttribute("class")) { 
        h2.removeAttribute("class");    
    } else { 
        h2.setAttribute("class", "minus"); 
    }
    // toggle div visibility by adding or removing a class
    if (div.hasAttribute("class")) { 
        div.removeAttribute("class");
    } else { 
        div.setAttribute("class", "open"); 
    } 
};

window.onload = function() {
    // get the h2 tags
    var faqs = $("faqs");
    var h2Elements = faqs.getElementsByTagName("h2");

    // attach event handler for each h2 tag     
    for (var i = 0; i < h2Elements.length; i++ ) {
        h2Elements[i].onclick = toggle;
    }
    // set focus on first h2 tag's <a> tag
    h2Elements[0].firstChild.focus();       
};

来自老师的Word文档: “将代码添加到toggle()函数,以便一次只能显示一个答案。为此,创建一个h2元素数组。然后,使用for循环遍历该数组中的h2元素,并删除所有未被单击的h2元素的class属性。您还需要删除所有未被单击的h2元素的所有div兄弟的class属性。

1 个答案:

答案 0 :(得分:-2)

如果要在JS中显示当前时间,可以尝试以下代码:

今天的var =新的Date(); var date = today.getFullYear()+'-'+(today.getMonth()+ 1)+'-'+ today.getDate(); var time = today.getHours()+“:” + today.getMinutes()+“:” + today.getSeconds(); var dateTime = date +''+ time;