我有一个委托弹出窗口,旨在在平板电脑和手机上显示模式。不幸的是,模态看起来要等到对@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是否应该受到责备,但我无法确定问题可能解决的地方。
答案 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;
});
}