我在这里和Reddit上问过如何使注释与孩子们折叠在一起,我想对所有帮助过我的人说谢谢,但是我对js一无所知,我对服务器端编程非常满意,他们告诉我要做很多我不了解的事情,而且我无法使其正常工作,而且我知道此问题有一个简单的解决方案,我认为我找到了使它在没有所有复杂性的情况下工作的逻辑。 >
这是我的html注释代码:
<div>
<a onclick="return toggle(1, 7, 10)" href="javascript:void(0)">[-]</a>
<div id="com1" class="com md" value="7-10" min="7">Yiiiihhaaa</div>
</div>
我要隐藏此评论:
<div>
<a onclick="return toggle(2, 8, 9)" href="javascript:void(0)">[-]</a>
<div id="com2" class="com md" value="8-9" min="8">Yiiiihhaaa</div>
</div>
这是我的js函数:
function toggle(id, lft, rgt) {
var kids = (rgt - lft - 1) / 2;
if (kids >= 1) {
var element = document.querySelectorAll("div.com#com" + id)[0].getAttribute('value');
var low = Number(element.split('-')[0]);
var high = Number(element.split('-')[1]);
for(var i = low + 1; i <= high - 1; i += 1){
var x = document.querySelectorAll('div.com[min=i]')[0]//this is the problem
if (x.style.display === "none") {
x.style.display = "block";
} else {
x.style.display = "none";
}
}
}
这是问题所在
for(var i = low + 1; i <= high - 1; i += 1){
var x = document.querySelectorAll('div.com[min=i]')[0]//this is the problem
我想在文档中搜索class =“ com”的元素,这些元素的属性为min = x,其中x在父注释的值之间。
例如:
父注释的值为=“ 7-10”。
我想隐藏min = x和7
答案 0 :(得分:1)
这是因为min
属性将不等于“ i” ...
您必须将变量i
的值插入“ i”位置。
因此,您应该执行以下操作:
document.querySelectorAll('div.com[min='+i+']')[0]