我有两行功能,我希望它们按顺序执行。功能是:
showNotification(message){
$("#notificationMessageBody").html(message); // line1
$("#notificationModal").modal('show'); //line2
}
因此,每当我调用showNotification("Hello World!")
时,我如何确保在line1
之前执行line2
(意味着在模态触发之前完成内容加载)
基本上,我试图在模态体中填写我的信息然后显示它,而不是在填充之前。
- 编辑 -
这些函数确实是一个接一个地执行,但是我的模态在jQuery将message
加载到#notificationMessageBody
结果,例如:如果我打电话给showNotification("Hello")
我得到一个模态"你好" (完成了模态和东西的安排),但之后如果我调用showNotification("World")
模态,则出现" Hello"首先,然后改为" World"。
注意:"你好"和"世界"我相信,这些都是大量的文字,因此将其加载到我的DIV中必须花费一些时间。即使它们被一个接一个地执行,但似乎(对于普通者)首先是模态弹出然后替换完成。我希望现在的情况有点清晰。
此处的任何地方都没有涉及AJAX。基本上,这是我可以说的自定义alert()函数。我的页面中有一个带有正确ID的模态。我改变了模态体内容(使用jQuery' s .html()
函数)并触发要显示的模态,如代码所示。
答案 0 :(得分:3)
您可以使用.promise()
方法(在jQuery 1.6中添加)来确保在第一次完成后执行第二个方法:
set1.should.have.same.items.as(set2)