skc*_*in7 0 html javascript css php jquery
首先发布在这里.最近我花了很多时间学习JavaScript.我一直在使用jQuery库,我刚刚了解到ajax调用不会对页面中动态加载的部分(无需刷新)起作用.当然,我也需要这些帖子的ajax功能.我需要帮助了解解决这个烦恼的最佳方法.
是的,我已经阅读并看到了jQuery常见问题解答中的内容,但对我来说它是模糊且无信息的,但确实提供了一些基本信息:http: //docs.jquery.com/Frequently_Asked_Questions#Why_do_my_events_stop_working_after_an_AJAX_request.3F
具体来说,我正在创建一个用户个人资料页面,其概念类似于Facebook个人资料页面.用户将评论发布给其他用户,并使用jQuery的ajax功能自动将新评论加载到页面上.每个评论都有诸如"删除","赞","回复"等按钮,这些按钮与ajax一起使用很好,但它们根本无法用于自动加载到页面上的注释...
我发现了delegate()方法,我理解的是有些人如何通过它.到目前为止,我在代码中的所有内容都是这样的:
$(document).delegate('img', 'click', function(){
alert('test'); //Stub
});
Run Code Online (Sandbox Code Playgroud)
这是有效的,但问题是我已经有了jQuery方法,我编写它来处理我的每一个ajax调用.我无法弄清楚如何使用委托来调用我已编写的jQuery代码块.可能吗?例如,这会在用户单击"回复"按钮的注释下方加载注释框:
$('img.wallpost_reply').click(function(){
$(this).closest('div.wallpost').find('div.wallreply').slideDown('fast'); //Toggle the window
$(this).closest('div.wallpost').find('textarea.wallpost_input').focus(); //Focus on the textarea
});
Run Code Online (Sandbox Code Playgroud)
^^这是一个非常简单的代码块完美地工作,类似于我拥有的许多其他小块代码.当用户点击"回复"图像时,会调用此对象,如下所示:
<img class="wallpost_reply" style="cursor:pointer;" src="./images/reply.png" alt="Reply" />
Run Code Online (Sandbox Code Playgroud)
如何指定delegate()来链接我已经写过的jQuery代码?这甚至可能吗?如果可能的话,我宁愿不编写具有相同功能的全新功能.
对于将通过ajax绑定到DOM或在运行时添加的任何元素,您必须使用
http://api.jquery.com/live/
Run Code Online (Sandbox Code Playgroud)
或您正在使用的代表.
http://api.jquery.com/delegate/
Run Code Online (Sandbox Code Playgroud)
这些将在文档级别绑定.
| 归档时间: |
|
| 查看次数: |
3808 次 |
| 最近记录: |