Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/74.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
Jquery 脚本没有';不能在以后加载的元素上工作?_Jquery - Fatal编程技术网

Jquery 脚本没有';不能在以后加载的元素上工作?

Jquery 脚本没有';不能在以后加载的元素上工作?,jquery,Jquery,我注意到容器中的一些jQuery按钮在初始页面加载完成后加载时不起作用 底部的按钮:今天,明天,改天 工作,但只是在开始 当您按下顶部的导航按钮,如场馆,然后再次单击事件时,这些按钮将不再工作。搜索页面上的按钮也不可用 以下是我的代码,例如: <a id="today_button" href="#" title="Click to show events for today"></a> jQuery('#today_button').click(function

我注意到容器中的一些jQuery按钮在初始页面加载完成后加载时不起作用

底部的按钮:今天明天改天 工作,但只是在开始

当您按下顶部的导航按钮,如场馆,然后再次单击事件时,这些按钮将不再工作。搜索页面上的按钮也不可用

以下是我的代码,例如:

<a id="today_button" href="#" title="Click to show events for today"></a>



jQuery('#today_button').click(function() {   
    jQuery("#today_button").addClass("active");
    jQuery("#tomorrow_button").removeClass("active");
    jQuery("#some_other_day_button").removeClass("active");
});

jQuery(“#今日按钮”)。单击(函数(){
jQuery(“今日按钮”).addClass(“活动”);
jQuery(“明天按钮”).removeClass(“活动”);
jQuery(“#some#other_day_按钮”).removeClass(“active”);
});
此外,选择按钮:

<a id="choose_button" href="#" title="Click to search for club events!"></a>

jQuery('#choose_button').click(function() {   

    $('#whole-ajax-content-one').load('search2.html');

});

jQuery(“#选择_按钮”)。单击(函数(){
$(“#整个ajax内容一”).load('search2.html');
});

谢谢大家!:)

如果需要将事件附加到动态HTML元素,则应使用事件处理程序上的

如果您有以下信息:

jQuery('#choose_button').click(function() {   
试试这个:

jQuery(document).on('click', '#choose_button', function() {   

如果需要将事件附加到动态HTML元素,则应使用事件处理程序上的

如果您有以下信息:

jQuery('#choose_button').click(function() {   
试试这个:

jQuery(document).on('click', '#choose_button', function() {   

对于动态元素,应该在
文档
对象上使用委托。试试这个

$(document).delegate('click', 'anyValidSelector', function(){

});
使用最新的jQuery 1.7+版,您可以使用
上的
将事件处理程序附加到任何元素,即使它是动态创建的


看一看

对于动态元素,您应该在
文档
对象上使用委托。试试这个

$(document).delegate('click', 'anyValidSelector', function(){

});
使用最新的jQuery 1.7+版,您可以使用
上的
将事件处理程序附加到任何元素,即使它是动态创建的


看看动态添加的元素需要重新绑定到事件

使用

或(1.7+)


动态添加的元素需要重新绑定到事件

使用

或(1.7+)


任何人都不应使用
live()
获取新代码。jQuery 1.7+您应该使用
on()
,您应该使用
delegate()
的较旧版本。
on
live
的替代品吗?我已经更新了答案,在
语法中使用当前的
,没有人应该使用
live()
。jQuery 1.7+您应该使用
on()
,旧版本您应该使用
delegate()
on
live
的替代品吗?我已经更新了答案,在
语法中使用当前的(而不是不推荐的)
,感谢ShankarSangoli,我接受了您的建议并使用了on函数,它工作得很好:)!谢谢Shankarsangli,我接受了你的建议,使用了on函数,它工作得很好:)!