MozTW 討論區
https://forum.moztw.org/

關於在 Firebird Web Panel 中使用 JavaScript
https://forum.moztw.org/viewtopic.php?f=2&t=1893
1 頁 (共 1 頁)

發表人:  BobChao [ 2004-01-30, 16:59 ]
文章主題 :  關於在 Firebird Web Panel 中使用 JavaScript

嗯... 簡單說因為想要做一個方便好用的 "MT It!" Web Panel, 所以做了一些關於 Web Panel 中 JavaScript 的實驗, 不過遇到了一些問題... 有經驗的高人幫忙解惑一下吧~ ^^;

如果要在 Web Panel 中控制主視窗畫面的網頁, 換網址時可以用這樣的東西:
代碼:
window._content.location.href = "http://140.117.199.85/bclog/;


查閱文件知道 window._content 是視窗內容的 Reference, 物件形態是 object Window... 可以用 location.href 一點也不意外, 不過接下來就是問題了:

在WebPanel中, 這玩意是只能寫不能讀的嗎 @@....

總之, 只要我試圖讀取該值, 就會出現 JavaScript 錯誤,說「錯誤: uncaught exception: P~~~~ Location.href」。中間 P~~~ 啥的是亂碼... 有空的人, 可以試試看這樣會不會成功:
代碼:
alert(window._content.location.href);

成功的話講一聲, 我再回去自己跟他奮鬥 >_<

測試環境在 Windows XP Home Edition (SP1 installed)
MozillaFirebird 0.7 (中文版)
Mozilla 1.6 (英文板, 這一樣是在 sidebar 裡測試的, 錯誤訊息是「Error: uncaught exception: Permission denied to get property Location.href」)

如果因為什麼原因不能讀, 不知道有沒有辦法獲取在主視窗部分選取的文字... (如果一定要用 XUL 我就苦惱了...)

下面是可以貼上就用的測試程式
代碼:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Web Panel 測試</title>
<script language="javascript" type="text/javascript">
function showOpener(){
   var winObj = window._content;
   
   //測試寫入
   winObj.location.href="http://140.117.199.85/bclog/";
   
   //測試讀出
   alert(winObj.location.href);
}
</script>
</head>
<body onload="showOpener()">
(記得叫出 JavaScript 控制台)
</body>
</html>

發表人:  訪客 [ 2004-02-16, 12:45 ]
文章主題 : 

我也覺得很奇怪, 為什麼在Web Panels不能讀取location.href. :(
不過既然JavaScript Console都寫Permission denied了, 由他吧.
相信都是跟Security有關的東西.
至於你說在主視窗部分選取的文字, 是否指這個:
代碼:
window.getSelection();
or
document.getSelection();

不知是什麼原因, document.getSelection() 是deprecated的.(但只有這個在Opera也可以用~~, 兩難情況又出現了^^", 如果不是用於Cross-browser, 還是用window.getSelection()吧)

發表人:  danielwang [ 2004-02-16, 19:15 ]
文章主題 : 

我確定在 xul extension 裡面你可以用 window._content

試過
<a id="mylink" target="_content" href="about:blank;"></a>

link = document.getElementById('mylink');
link.href = 'blah';
link.click();

了嗎?

發表人:  BobChao [ 2004-02-16, 19:23 ]
文章主題 : 

了... 不過我也可以寫入該值
只是沒辦法出... ^^;

1 頁 (共 1 頁) 所有顯示的時間為 UTC + 8 小時
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/