Javascript 美元散列和变量-$('#
因此,为了在我的站点中显示和隐藏某些DIV标记,我得到了以下代码Javascript 美元散列和变量-$('#,javascript,jquery,variables,toggle,Javascript,Jquery,Variables,Toggle,因此,为了在我的站点中显示和隐藏某些DIV标记,我得到了以下代码 $('#ONE').live('click', function () { $('.hide').css('display', 'none'); $('#b-ONE').css('display', 'block'); }); $('#TWO').live('click', function () { $('.hide').css('display', 'none'); $('#b-TWO').cs
$('#ONE').live('click', function () {
$('.hide').css('display', 'none');
$('#b-ONE').css('display', 'block');
});
$('#TWO').live('click', function () {
$('.hide').css('display', 'none');
$('#b-TWO').css('display', 'block');
});
点击div name和“ONE”会打开一个特定的“b-ONE”div,以此类推。它可以完美地工作,但当列表变长时会很痛苦。你可以看到JS中的“ONE”和“TWO”…我有没有办法将这些“ONE”和“TWO”转换为“ONE”和“TWO”到变量中,所以我可以有多达40个DIV,而不必为每个DIV键入上面的代码,并且有一个光滑的代码,我只需要用变量键入一次finction
我正在研究类似的内容,但缺乏深入的JS/jQuery知识:
$('#VARIABLETEXT').live('click', function () {
$('.hide').css('display', 'none');
$('#b-VARIABLETEXT').css('display', 'block');
});
其中,单击名为“TWENTYONE”的div可显示div“b-TWENTYONE”
非常感谢您的帮助!在为要更改的元素构建选择器时,只需使用单击元素的
id
:
$('#ONE, #TWO, #THREE').live('click', function () {
$('.hide').css('display', 'none');
$('#b-' + this.id).css('display', 'block');
// ^^^^^^^^^^^^^^
});
初始选择器(“#一、#二、#三”
)的编写可能会更好,方法是为所有这些元素赋予相同的class属性,然后使用。class
也可能有一种结构化的方法,但是由于您没有引用HTML,所以不可能这么说
旁注:
live
函数不仅已被弃用,而且实际上已从jQuery最近的Vesrion中删除。以下是最新的等效功能:
$(document).on('click', '#ONE, #TWO, #THREE', function () {
$('.hide').css('display', 'none');
$('#b-' + this.id).css('display', 'block');
// ^^^^^^^^^^^^^^
});
为要更改的元素构建选择器时,只需使用单击元素的
id
:
$('#ONE, #TWO, #THREE').live('click', function () {
$('.hide').css('display', 'none');
$('#b-' + this.id).css('display', 'block');
// ^^^^^^^^^^^^^^
});
初始选择器(“#一、#二、#三”
)的编写可能会更好,方法是为所有这些元素赋予相同的class属性,然后使用。class
也可能有一种结构化的方法,但是由于您没有引用HTML,所以不可能这么说
旁注:
live
函数不仅已被弃用,而且实际上已从jQuery最近的Vesrion中删除。以下是最新的等效功能:
$(document).on('click', '#ONE, #TWO, #THREE', function () {
$('.hide').css('display', 'none');
$('#b-' + this.id).css('display', 'block');
// ^^^^^^^^^^^^^^
});
在某些时候,您应该开始计划使用当前建议的绑定jQuery事件处理程序的方法。
.live()
API已经被弃用了很长一段时间(几年)。在某些时候,您应该开始计划使用当前建议的绑定jQuery事件处理程序的方法。.live()
API已经被弃用了很长一段时间(几年了)。此外,使用.hide()
和.show()
这几乎总是一个好主意。on而不是.live@patel.milanb:!!我甚至没有注意到使用.live
!谢谢,我已经添加了一条关于它的说明。t.J.,Nico,,patel…非常感谢!!成功了!太棒了!我刚刚遇到stackoverflow,刚刚注册…希望我能在这里给cmmunity一些东西!另外,使用.hide()
和.show()
这几乎总是一个好主意。on而不是.live@patel.milanb:!!我甚至没有注意到使用.live
!谢谢,我已经添加了一条关于它的说明。t.J.,Nico,,patel…非常感谢!!成功了!太棒了!我刚刚遇到stackoverflow,刚刚注册…希望我能在这里给cmmunity一些东西!