2013-08-23 55 views
0

我正在用ajax加载一些内容到我的网页的索引,我有一些点击功能适用于这些内容,问题是点击事件只是工作,如果我加载内容手册,如果我使用ajax,它不适用于加载它的内容,它看起来像我告诉网站,有新的内容,但我不知道如何。加载内容并应用函数jQuery

+0

一些代码会有帮助。 –

+0

使用点击事件,像这样'$(document).on('click','your id or class',function(){});' – Kathiravan

+0

@Kathiravan一个问题,如果我有一个.bind结束事件,怎么办我会做? –

回答

1

您需要为动态添加的元素执行event delegation

例:

$('containerId').on('click','elementId',function(){ 

//do something 

}) 

其中

containerId //To which you added the elements 

elementId //on which you are doing the click event. 

$(document).on(.....也有效,但选择更具体的元素提高了性能。

+0

非常感谢,解决了我的问题。 –

+0

一个问题,如果我得到.bind结束事件,我该怎么做/ –

1

你需要使用on jquery的方法。 Jquery On()

委托事件有优势,他们可以处理来自被添加到该文件在稍后的时间 后代元素的事件。通过 挑选一个在连接了委托事件处理程序时保证存在的元素,可以将委派事件用于 ,从而避免需要经常附加和删除事件处理程序。

$('#yourID').on('click','context',function(){ 

//do something 

}) 
+0

有一个问题,如果我有一个.bind结束事件,我该怎么做呢? –

1

试试这个

$(document).on('click', 'your id or class', function(){ 
    //ur action here 
}); 
+0

一个问题,如果我得到一个.bind结束事件,我该怎么做? –

0

搜索关键字:JavaScript事件委托。

加载新内容后,您可以使用事件委托或绑定事件。

0

点击事件可能在#id或.class中定义,或者是通过ajax在页面中以页面形式添加到页面中的元素。

你必须认识到的是,该函数在页面加载时执行,当时,特定元素(#id或.class)不会在那里,因此你不能执行点击功能。

检查您的浏览器控制台,您可能会收到未定义的错误。