MDA/MDD/TDD/DDD/DDDDDDD
          posts - 536, comments - 111, trackbacks - 0, articles - 0
            BlogJava :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

          showModalDialog和window.open用法

          Posted on 2008-01-25 11:29 leekiang 閱讀(1032) 評(píng)論(0)  編輯  收藏 所屬分類: web開(kāi)發(fā)
          1,vReturnValue = window.showModelDialog(sURL [, vArguments] [,sFeatures])
          vArguments--
          可選參數(shù),用來(lái)向?qū)υ捒騻鬟f參數(shù)。傳遞的參數(shù)類型不限,包括數(shù)組等。對(duì)話框通過(guò)window.dialogArguments來(lái)取得傳遞進(jìn)來(lái)的參數(shù)。
          vArguments的類型不限制,對(duì)于字符串類型,最大為4096個(gè)字符。也可以傳遞對(duì)象。如果為this或window,則傳遞的是父頁(yè)面的引用
          parent.htm
          var?obj?=?new?Object();
          obj.name
          ="51js";
          window.showModalDialog(
          "modal.htm",obj,"dialogWidth=200px;dialogHeight=100px");

          modal.htm
          var?obj?=?window.dialogArguments
          alert(
          "您傳遞的參數(shù)為:"?+?obj.name)


          2,怎樣才讓在showModalDialog和showModelessDialog的超連接不彈出新窗口?
            在被打開(kāi)的網(wǎng)頁(yè)里加上<base target="_self">
          3,怎樣才刷新showModalDialog和showModelessDialog里的內(nèi)容?
            在showModalDialog和showModelessDialog里是不能按F5刷新的,又不能彈出菜單。這個(gè)只能依靠javascript了,以下是相關(guān)代碼:
          <body onkeydown="if (event.keyCode==116){reload.click()}">
          <a id="reload" href="filename.htm" style="display:none">reload...</a>
            將filename.htm替換成網(wǎng)頁(yè)的名字然后將它放到你打開(kāi)的網(wǎng)頁(yè)里,按F5就可以刷新了,注意,這個(gè)要配合<base target="_self">使用,不然你按下F5會(huì)彈出新窗口的。
          在模態(tài)窗口的模態(tài)窗口中刷新父窗口,可用:
          String js = "<script>"
          ??? ??? ??? ??? + "self.close();parent.window.dialogArguments.alert('成功!');"
          ??? ??? ??? ??? + "parent.window.dialogArguments.document.getElementById('reload').click();"
          ??? ??? ??? ??? + "</script>";
          4、如何用javascript關(guān)掉showModalDialog(或showModelessDialog)打開(kāi)的窗口。
            <input type="button" value="關(guān)閉" onclick="window.close()">
            也要配合<base target="_self">,不然會(huì)打開(kāi)一個(gè)新的IE窗口,然后再關(guān)掉的。
          5,window.open打開(kāi)的窗口不產(chǎn)生滾動(dòng)條,怎么辦?
          ? ? 修改body : <body scroll="yes">。 看起來(lái)是yes,以為就算沒(méi)有超出范圍也會(huì)有滾動(dòng)條,而實(shí)際上IE會(huì)自動(dòng)判斷,只有超出才會(huì)有滾動(dòng)條,實(shí)際效果應(yīng)該是scroll=auto.為什么會(huì)這樣?不深究了。

          6,不能location.reload,而要用location.href=''

          7,在模態(tài)對(duì)話框里顯示滾動(dòng)條
          ?? 在body里加style="overflow: auto;" scroll="yes"
          主站蜘蛛池模板: 济阳县| 玛纳斯县| 项城市| 潍坊市| 休宁县| 西和县| 甘南县| 中方县| 青海省| 中超| 木里| 包头市| 黎城县| 宁海县| 江口县| 尼木县| 江北区| 梁山县| 恩施市| 乌拉特后旗| 宜宾县| 罗田县| 克东县| 布拖县| 十堰市| 滦平县| 商水县| 顺义区| 新乡市| 若羌县| 新昌县| 开江县| 东城区| 余姚市| 郯城县| 三门峡市| 师宗县| 瓮安县| 弥勒县| 兴文县| 望谟县|