Re: [js] 如何把另開視窗置中

看板Ajax作者 (請勿忘記密碼)時間16年前 (2009/03/29 20:22), 編輯推噓4(405)
留言9則, 1人參與, 最新討論串3/4 (看更多)
※ 引述《HuangJC (吹笛牧童)》之銘言: : ※ [本文轉錄自 PHP 看板] : 作者: HuangJC (吹笛牧童) 看板: PHP : 標題: [請益] 如何把另開視窗置中 : 時間: Sun Mar 29 19:43:25 2009 : 如題,我是想問 JavaScript 的做法 : 但找到 Java 板,找不到 JavaScript 板 : 因此先發這邊,看能不能轉去另一個版面 : <input type='submit' value='顯示XX' onclick='window.open(....)' /> : 如上,這是我想到做法的外框 : 當然如果 PHP 這個 server side 語言能辦到,那就太感謝了 : 上面的 code 會產生一個按鍵,按下後執行 onclick 裏的 JS 語法 : window.open 可以給一些參數,其中包含新視窗的 left,top : 可是我不知道 user 的視窗有多大,必需用變數,用計算來做 : 因此困難就出來了 : onclick='function(){.....}' : 如果可以用這種語法,也許我還可以包一些計算 : 可惜的是我失敗了 : PHP 在 server side 有沒有什麼武器可以幫忙這些事呢? : 以上,謝謝 如果你指的「置中」是相對於整個螢幕,可以使用screen物件來取得 使用者螢幕的解析度。可以使用以下: screen.width 螢幕寬度 screen.availWidth 螢幕寬度,但去除Windows工具列的寬度 screen.height screen.availHeight 有了螢幕寬度與高度,配合要開啟的視窗的寬度與高度,就可以 計算出視窗要開在哪個座標看起來會在螢幕正中央了。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.116.64.235

03/29 20:24, , 1F
我曾把 code 寫在子視窗中,結果是子視窗先出現再移動..
03/29 20:24, 1F

03/29 20:24, , 2F
如果我要在母視窗中先算好的話,我想用 function(){}
03/29 20:24, 2F

03/29 20:25, , 3F
這個好像叫 closure function;但 onclick 中能用嗎?
03/29 20:25, 3F

03/29 20:28, , 4F
謝謝;我好像太堅持了,那就拆開來寫 XD ; 堅持的原因是,
03/29 20:28, 4F

03/29 20:28, , 5F
code 是別人的,我只做小修;因此會想把修改'擠在一起'
03/29 20:28, 5F

03/29 20:29, , 6F
但如果無法擠在一起...腦袋活一點也不是難事 :)
03/29 20:29, 6F

03/29 21:06, , 7F
可喜可賀,寫出來了 XD
03/29 21:06, 7F

03/29 21:59, , 8F
最後我避不了使用了動態產生程式這樣的技巧,但同事曾批評
03/29 21:59, 8F

03/29 22:00, , 9F
另一位同事敗在這裏;因為太難維護..儘量不要用..
03/29 22:00, 9F
文章代碼(AID): #19psVqLt (Ajax)
討論串 (同標題文章)
文章代碼(AID): #19psVqLt (Ajax)