showModalDialog和showModelessDialog的区别是什么?我不太理解模态窗口。请不要复制粘贴网上的长篇大论,说说自己的理解,谢谢。再有就是showModalDialog和window.open()的区别在哪?

解决方案 »

  1.   

    showModalDialog() 弹出一个对话框,对话框是依附于打开它的那个窗口的;window.open() 是开一个新窗口,和打开它的那个窗口是独立的
    showModalDialog() 必须关闭才能操作打开它的那个窗口;而 window.open() 打开的窗口不必关闭也可以操作打开它的那个窗口
    二者控制打开它的窗口方法也不一样,一个使用 dialogArguments,后者使用 opener
      

  2.   

    那“模态”是什么意思呢?还有showModelessDialog和showModalDialog的区别?
      

  3.   

    模态我个人理解就是一种模式~·也就是介绍showModalDialog所说的,就是依附在打开它的那个窗口上。showModalDialog:被打开后就会始终保持输入焦点。除非对话框被关闭,否则用户无法切换到主窗口。类似alert的运行效果
    showModelessDialog:被打开后,用户可以随机切换输入焦点。对主窗口没有任何影响
    showModelessDialog相比showModalDialog就有点类似于window.open它可以不关闭,还能让父窗口或得焦点,而showModalDialog就必须关闭之后才能让父窗口获得焦点,就跟alert这些弹出框似的~·
      

  4.   

    那就是说showModelessDialog和window.open都是非模态的?它们俩有什么区别么?
      

  5.   


    只能说他们两个类似~·都好比是新打开一个窗口,而不是像模态试那样,依附在父窗口上~·
    像alert这些就是模态试的~·
      

  6.   

    showModelessDialog你可以把它理解为功能上类似window.open但是形式上还是模态试的~·
      

  7.   

    window.open打开的应该是一个新的browser吧?showModelessDialog打开的是个什么窗口?它是有window对象的是么?
      

  8.   


    window.open有window对象,因为它是新打开一个窗口而showModelessDialog没有window对象~·