我一直在爲Facebook使用Chrome編寫一個Greasemonkey腳本(拖放作爲擴展)。我知道Greasemonkey是沙盒,至少就Firefox而言,除非在瀏覽器中更改設置,否則無法關閉含腳本的窗口。但是,我知道大多數瀏覽器都允許父窗口關閉子窗口,而不需要用戶的確認。無論如何,我試圖讓我的腳本打開一個窗口,從HTML對象中獲取文本片段,然後在頁面上按下按鈕關閉窗口。用Greasemonkey關閉窗口
我打開窗口代碼如下所示:
function birthday(linkAddress) {
var winNew=window.open(linkAddress, "_blank", "height=100", "width=100");
/*code to be run on page*/
winNew.close()
}
的窗口打開罰款,但我得到了Chrome瀏覽器中的JavaScript錯誤說「不能調用方法‘關閉’的未定義」。我認爲我的對象與Greasemonkey沙盒相關有些問題,但我無法確定是什麼。是否可以在Chrome中使用Greasemonkey腳本關閉窗口?我需要啓用一些設置嗎?或者我的代碼錯了?請記住,這段代碼是通過我設置的主窗口頁面中的一個函數運行的,它使用我寫入頁面的按鈕的onClick事件在腳本中設置爲一個函數。還有任何提示訪問子頁面上的DOM元素將不勝感激。
感謝您的幫助!
(對不起,我很新,以及不與編程實踐中,這是第一次我寫了一個腳本Greasemonkey的)
我想我的問題的一部分也是,我認爲我是從頁面運行的代碼,但實際上我並不是。感謝您的幫助澄清。我將再次嘗試,並在必要時添加位置黑客。 – Matt 2010-12-16 19:57:08