【问题标题】:How to do something when dom ready event?dom准备好事件时如何做某事?
【发布时间】:2012-02-05 20:29:19
【问题描述】:

我有加载内容的 ajax 函数。我想在加载内容准备好(加载)时做一些事情。我该怎么做?

我试试live():

$("ul.slide-gallery").live("ready", function(){
                $("ul.slide-gallery").prettyGallery();
            });

不工作。

【问题讨论】:

  • 您的 jquery 对象的开头有两个双引号。
  • 这是不可能的。您需要直接在 AJAX 代码中进行。
  • @Vladimir:为什么不发布您的 AJAX 代码,以便有人可以为您提供与您的问题直接相关的解决方案?
  • 你在打什么类型的 ajax 调用? $.ajax、$.get、$.post??

标签: jquery events live


【解决方案1】:

使用 ajax 请求回调来做你需要做的事情。 Live 监控事件。向 DOM 添加元素不是一个事件,因此您不能那样做。您从未指定如何进行 ajax 调用,所以我将假设发布。

$.post(url, function(data) {
      //load data or whatever you are doing
      //$('foo').append(data);

      //after loading call your code
      $("ul.slide-gallery").prettyGallery();
});

【讨论】:

    【解决方案2】:
    $(document).ready(function(){
        $("ul.slide-gallery").prettyGallery();
    });
    

    【讨论】:

    • 这对以下有什么帮助:“我有加载内容的 ajax 函数。”
    • 几乎所有的 jQuery 都应该包装在文档就绪类型的函数中。如果您在使用 $.ajax 调用后需要做某事,您可以在其成功方法中进行。希望这可以帮助! api.jquery.com/jQuery.ajax
    猜你喜欢
    • 1970-01-01
    • 2013-12-23
    • 2020-04-07
    • 2013-01-26
    • 1970-01-01
    • 2015-07-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多