Javascript jQuery未将属性插入链接

Javascript jQuery未将属性插入链接,javascript,jquery,html,Javascript,Jquery,Html,我有一个向下滑动div的链接,如下所示 <a href="#" id="Link_1">Show Div</a> 最后两行是插入属性,但第一行不起作用,而且我没有收到任何错误 编辑 令人惊讶的是,我只是碰巧尝试过, 第一行在jquery 1.9中工作。为什么?不能添加这样的单击处理程序,请尝试以下操作: $("#Link_"+id).live('click', function(){ $('#Div_'+id+'').slideToggle('slow'); }

我有一个向下滑动div的链接,如下所示

<a href="#" id="Link_1">Show Div</a>
最后两行是插入属性,但第一行不起作用,而且我没有收到任何错误

编辑

令人惊讶的是,我只是碰巧尝试过,
第一行在jquery 1.9中工作。为什么?

不能添加这样的单击处理程序,请尝试以下操作:

$("#Link_"+id).live('click', function(){
    $('#Div_'+id+'').slideToggle('slow');
});

无法添加这样的单击处理程序,请尝试以下操作:

$("#Link_"+id).live('click', function(){
    $('#Div_'+id+'').slideToggle('slow');
});

尝试以这种方式绑定它:

$("#Link_"+id).on("click", function () { 
  $('#Div_'+id+).slideToggle('slow');
});
当您使用jquery1.4时。您需要的是
live
,而不是
on

$("#Link_"+id).live( "click", function() {
 $('#Div_'+id+).slideToggle('slow');
});

尝试以这种方式绑定它:

$("#Link_"+id).on("click", function () { 
  $('#Div_'+id+).slideToggle('slow');
});
当您使用jquery1.4时。您需要的是
live
,而不是
on

$("#Link_"+id).live( "click", function() {
 $('#Div_'+id+).slideToggle('slow');
});

我建议改用
。单击()

$("#Link_"+id).click(function(){
    $('#Div_'+id).slideToggle('slow');
    return false;
});

回答编辑:jQuery 1.9检查您是否试图设置事件处理程序,并添加处理程序而不是设置属性。jQuery1.4没有这样的检查。(我查看了源代码)

我建议使用
。单击()

$("#Link_"+id).click(function(){
    $('#Div_'+id).slideToggle('slow');
    return false;
});

回答编辑:jQuery 1.9检查您是否试图设置事件处理程序,并添加处理程序而不是设置属性。jQuery1.4没有这样的检查。(我查看了源代码)

你想绑定什么?你会把它放在JSFIDLE中并与我们共享链接吗?用jQuery设置
onclick
属性?这太疯狂了。@undefined:Hmmm,在这种情况下,它也证明了我的名字是正确的。使用事件属性是一种不好的做法。您正在加载jQuery,使用它的方法,如果基于特定条件发生了什么事情,您可以在事件处理程序中处理它。而且我确信你根本不需要那个循环。选择目标元素有更好的方法。你想绑定什么?你会把它放在JSFIDLE中并与我们共享链接吗?用jQuery设置
onclick
属性?这太疯狂了。@undefined:Hmmm,在这种情况下,它也证明了我的名字是正确的。使用事件属性是一种不好的做法。您正在加载jQuery,使用它的方法,如果基于特定条件发生了什么事情,您可以在事件处理程序中处理它。而且我确信你根本不需要那个循环。选择目标元素有更好的方法。请正确阅读问题。我不想调用click handler,任务是最初禁用链接(缺少handler和灰色).在一个特定的事件之后,我调用这三行,这样颜色变为白色,链接现在有了一个处理程序,而不是调用单击处理程序;它正在添加一个单击处理程序。请参阅jQuery文档。如果它被包装在函数中,并且在您谈论的任何事件中都会触发,那么这将满足您的需要。但是对于jquery 1.4为什么
live
而不是
click
?请正确阅读问题。我不想调用click handler,任务是最初链接被禁用(缺少处理程序且颜色为灰色).在一个特定的事件之后,我调用这三行,这样颜色变为白色,链接现在有了一个处理程序,而不是调用单击处理程序;它正在添加一个单击处理程序。请参阅jQuery文档。如果它被包装在函数中,并且在您谈论的任何事件中都会触发,那么这将满足您的需要。但是jquery 1.4为什么
直播
而不是
点击