Javascript 如何减少重复的jQuery代码
第一次张贴在这个伟大的网站这里 我想减少以下代码的数量,特别是因为我需要在将来添加更多的部分-我相信一定有一个简单的方法,但我只是没有看到它。谢谢你的帮助Javascript 如何减少重复的jQuery代码,javascript,jquery,Javascript,Jquery,第一次张贴在这个伟大的网站这里 我想减少以下代码的数量,特别是因为我需要在将来添加更多的部分-我相信一定有一个简单的方法,但我只是没有看到它。谢谢你的帮助 $(document).ready(function(){ $(function(){ $('#iqdrive').click( function(){ $('#iqdrive-cont').sho
$(document).ready(function(){
$(function(){
$('#iqdrive').click(
function(){
$('#iqdrive-cont').show();
});
});
$(function(){
$('#optiwave').click(
function(){
$('#optiwave-cont').show();
});
});
$(function(){
$('#vario').click(
function(){
$('#vario-cont').show();
});
});
$(function(){
$('#autostain').click(
function(){
$('#autostain-cont').show();
});
});
$(function(){
$('#autoload').click(
function(){
$('#autoload-cont').show();
});
});
})) 首先,您不需要嵌套
document.ready
函数(所有$(function(){
都是冗余的,因为它相当于document.ready
)。为了简化代码:
$(function() {
$('#iqdrive, #optiwave, #vario, #autostain, #autoload').click(function() {
$('#' + this.id + '-cont').show();
});
});
所有内部
$(function())
调用都是不必要的,因为$(function())
是$(document).ready(function())
的别名。您的示例显示了相同类型任务的大量重复;这很容易合并
$(document).ready(function(){
$('#iqdrive, #optiwave, #vario, #autostain, #autoload').click(function(){
$($(this).attr("id") + "-cont").show();
});
});
这样做的目的是注册对具有这些ID的元素的单击,然后单击,获取所单击元素的ID,附加
-cont
,并使用该ID作为选择器来获取要显示的一组元素。很酷,谢谢-我知道它非常臃肿,这就是我来到这里的原因-这已经解决了一些问题:)