mlw2000 2009-03-06 14:35
浏览 557
已采纳

模拟阻塞对话框的实现,是不是无法实现?

javascript中有几个模态阻塞对话框需要模拟分别是:alert()prompt()confirm()showModalDialog()

这些对话框的共同特点都是执行代码后,包含该代码的代码段都要停止或者说阻塞,等操作返回时,被阻塞的代码继续执行,类似断点。
通常,我们只所以要进行模拟,目的在于改善用户界面体验,或者说我们不想使用浏览器提供的那种默认的对话框样式,所以,我们想使用div层来进行模拟。
例如:当执行到test函数的第2行时,我们需要阻塞该函数的运行,直到用户执行了模拟弹出框的对应操作。
[code="java"]
function myconfirm(){
/**some code here*/
}
function test(){
var a=1;
if(myconfirm("你确定要测试确认对话框吗,请选择...")){ a=2;}else{a=2;}
if(a==2){alert("成功")}else{alert("失败")}
}
[/code]
ps:实现非阻塞的模拟是比较容易的,但非阻塞的对话框对原有的代码改动非常大,因为他只能使用回调函数的方式来实现。

  • 写回答

4条回答 默认 最新

  • kjah_1 2009-03-10 16:30
    关注

    js没有线程,就更没有线程相关控制,要实现你要的效果只能模拟,
    个人认为使用回调函数完全可以了

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 乘性高斯噪声在深度学习网络中的应用
  • ¥15 运筹学排序问题中的在线排序
  • ¥15 关于docker部署flink集成hadoop的yarn,请教个问题 flink启动yarn-session.sh连不上hadoop,这个整了好几天一直不行,求帮忙看一下怎么解决
  • ¥30 求一段fortran代码用IVF编译运行的结果
  • ¥15 深度学习根据CNN网络模型,搭建BP模型并训练MNIST数据集
  • ¥15 C++ 头文件/宏冲突问题解决
  • ¥15 用comsol模拟大气湍流通过底部加热(温度不同)的腔体
  • ¥50 安卓adb backup备份子用户应用数据失败
  • ¥20 有人能用聚类分析帮我分析一下文本内容嘛
  • ¥30 python代码,帮调试,帮帮忙吧