JqModal AjaxText没有出现

时间:2015-04-14 23:33:51

标签: coffeescript jqmodal

我有一个委托弹出窗口,旨在在平板电脑和手机上显示模式。不幸的是,模态看起来要等到对@href的ajax调用完成后再显示任何内容。从文档看来,在 ajax调用期间,模式应该弹出{em}填充,但是在突然出现弹出窗口之前我什么也看不见。这个电话可以预测足够长(开发时间约为5秒),我知道加载器没有机会出现在瞬间。

ajaxText

以下是CoffeeScript中的内容,但遵循官方文档中的惯例。

$('a.word').on(touchstart: touchWordPopup)

HTML:

touchWordPopup: (event) ->
  event.preventDefault()
  // another function handles mouse hover popups, 
  // so let's disable that stuff.
  $(this).off('mouseover mouseenter mouseleave')
  $('#popup').jqm(
    closeClass: 'close'
    ajax: @href
    ajaxText: '<h2>Loading...</h2>'
    modal: true
  ).jqmShow()

我想知道代表团或CoffeeScript是否应该受到责备,但我无法确定问题可能解决的地方。

1 个答案:

答案 0 :(得分:0)

CoffeeScript不应该受到责备。

我发布了jqModal 1.3.0,它立即显示(显示)启用了ajax的模式。

文档已更新,我已加入example (#5)来测试较慢的远程响应。

因为现在立即触发jqmShow()的等价物,如果你的ajax响应包含与closeClass匹配的元素,它们将永远不会附加。最好通过修补jqModal并将事件处理程序绑定到模态iteself来更正,但是现在你可以使用onLoad:

onLoad: function(hash){ 
  var modal = hash.w;
  $(hash.o.closeClass, modal).click(function(){
    modal.jqmClose(); 
    return false;
  }); 
}