首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >jquery.load()获取内容后,jQuery函数不起作用

jquery.load()获取内容后,jQuery函数不起作用
EN

Stack Overflow用户
提问于 2012-07-18 00:54:26
回答 4查看 369关注 0票数 0

我有一个页面,并在一个custom.js文件(我正在使用jQuery )中定义了我的java脚本函数。我把JS文件放在body末尾的</body>标签之前

我的页面有一个这样的div元素:<div id="userinfo"></div>当我的页面加载时,我的JS文件将外部页面提取到该页面。

外部页面有一个像这样的<div id="login"></div>元素

在我的JS文件中,我定义了一个函数,当用户单击login时,模式窗口加载并向用户显示登录表单。

但是当我加载外部页面时,我的JS文件无法工作!!似乎找不到元素。

请给我指引!:)

custom.js文件的某些部分:

代码语言:javascript
复制
jQuery(document).ready(function($) {

 $('#userinfo').load('CustomerOptions.asp');

  (function() {
     $('#login').click(function(event){
         // something to do
     });
  })();

});
EN

Stack Overflow用户

发布于 2012-07-18 00:58:20

它不起作用,因为在#login出现在DOM中之前,您已经给它分配了一个事件。对于这种情况,您必须使用“实时”事件。实时事件不要求目标元素出现在DOM中。

代码语言:javascript
复制
jQuery(document).ready(function($) {
   $('#userinfo').load('CustomerOptions.asp');

  $('#userinfo').on('click','#login',function(event){
     // something to do
  });
})();

EDIT:正如@ManselUK所指出的,'live‘已弃用,必须使用'on’。

票数 0
EN
查看全部 4 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11527221

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档