1

我的咖啡脚本中有这段代码:

$('.asdasd').ready ->
  $.ajax '/splunk/100000000',
  type: 'GET'
  cache: false
  success: (html) ->
    $('.splunk_results').append html

div 甚至不存在 - 但是,在我的asdasd控制台中,我可以看到正在调用 /splunk/10000000"。为什么会这样?

编辑:

我认为问题可能与以下事实有关. 我基本上想看看那个 div 何时存在,当它存在时,发出一个新请求并用该请求的结果填充 div。

4

2 回答 2

3

(针对问题编辑进行了大量编辑)

.ready只是文档的有效事件。 jQuery 的文档 forready没有定义参数$is not的情况下的行为document。也就是说,没有什么能阻止您定义一个按照您想要的方式运行的事件!与其监听就绪事件,不如发明一个自定义事件(例如readyForSplunk)并在适当的时间触发它。

文档或要创建的 div 的某个更近的父级asdasd应该有一个代理处理程序来监听readyForSplunk事件。创建asdasddiv 的 js 按钮也应该是新的 div。triggerHandler('readyForSplunk')

于 2012-07-19T18:02:27.910 回答
1

readyDOM 准备好时运行。如果您只希望它在有问题的元素在页面中时运行,您可以执行以下操作:

_get = ->
  $.ajax '/splunk/100000000',
    type: 'GET'
    cache: false
    success: (html) ->
      $('.splunk_results').append html

$('.asdasd').each ->
  _get()
  _get = ->
于 2012-07-19T18:04:16.990 回答