我正在建立一个自定义的lightboxing系统(因为我不喜欢那里的任何处理它),我需要一种方法来检测灯箱是否已经打开。JavaScript使用任何数字
我想要做的是这样的:
if (getElementById("lb" + ##).clientHeight > 0) {
// do nothing
} else {
// execute code
}
凡##代表任意两个数字的任意组合,因此,如果我有
<div class="lightbox" id="lb01">
<!-- empty -->
</div>
<div class="lightbox" id="lb02">
<!-- empty -->
</div>
我可以,如果一个检测他们正在展示,如果是,则不打开另一个。
编辑:我真的不喜欢使用jQuery,这似乎应该比我得到的一些答案更容易。我愿意改变任何事情使其发挥作用,这些类或ID都不是最终的。
编辑2:想出了一个更简单的方法来做到这一点。我设置了一个全局变量var lb = 0;
,然后检测该变量的值,如果它等于0,它将运行该函数并将该值更改为1.当我运行闭合函数时,它将该值更改为0。从不止一个开放,没有你们给我的那些疯狂的JS东西。
基本上,代码现在看起来像这样,并且完全像我想要的那样工作。
var lb = 0;
function lightbox(id) {
if (lb == 0) {
lb = 1;
} else {
// do nothing
}
}
function hideme(id) {
lb = 0;
}
跟踪数组中的所有div元素都可以考虑... – Varun 2011-04-27 03:44:24
[对JQUERY的抵抗力很强] – 2011-04-27 04:17:13
@Ates Goral你打算让jquery-women穿一个'$('#niqab')',我们都必须为'$('。Resigprayers')'祈祷'一天一次? – KooiInc 2011-04-27 04:47:03