Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/432.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为什么更改按钮的类别后,单击功能不起作用?_Javascript_Jquery - Fatal编程技术网

Javascript 为什么更改按钮的类别后,单击功能不起作用?

Javascript 为什么更改按钮的类别后,单击功能不起作用?,javascript,jquery,Javascript,Jquery,我有一组用户单击的按钮(上一个和下一个) <a id="prev_btn" class="prev_1" href="#">Previous</a> <a id="next_btn" class="next_1" href="#">Next</a> 在我使用jquery更改类之后,为什么click函数不起作用?这是因为绑定是在加载时定义的。如果您希望它们动态工作,请通过LIVE绑定单击 $('.prev_2').live('click', fun

我有一组用户单击的按钮(上一个和下一个)

<a id="prev_btn" class="prev_1" href="#">Previous</a>
<a id="next_btn" class="next_1" href="#">Next</a>

在我使用jquery更改类之后,为什么click函数不起作用?

这是因为绑定是在加载时定义的。如果您希望它们动态工作,请通过LIVE绑定单击

$('.prev_2').live('click', function() {
       alert('hi!');
});

听起来你对这里的评估时间感到困惑
$('.prev_2')
获取当前具有“prev_2”类的所有元素,并对其应用给定的操作;无论将哪些元素添加到此类或从该类中删除,它都不是保持有效的声明

如果需要基于类的处理程序,可以在文档级别注册onclick处理程序,并测试事件目标的类并相应地进行分派。但是,只需向特定按钮注册一个单击函数,并在该处理程序中,在执行操作之前测试按钮的类,就更简单了。

$('.prev_2')。单击(…)
被执行时,“previous”按钮没有prev_2类,因此它没有被分配单击处理程序,只有在调用
.click
方法时当前具有该CALS的内容才会绑定该处理程序


你想看看
.live
jquery函数来获得你想要的

这正是我想要的!非常感谢你!唯一需要添加的是选择器的开始单引号。很高兴能帮上忙,很抱歉输入错误。
$('.prev_2').live('click', function() {
       alert('hi!');
});