2012-02-25 9 views
1

Operaでバグのような問題が発生しました。ポップアップウィンドウの "閉じた"プロパティを取得しようとしています。JavaScriptとOperaの "window.open"によって "closed"プロパティの異常が返される

ここで実行した操作です。

>>> win = open('some url in the same domain with the parent window','name','feature') 
Window 
>>> win.closed //at this point, the popup window is not closed 
false 
>>> win.closed //at this point, the pop window is closed 
false //this should be true 

第2の「偽」は、私が予想しているように「真」でなければなりません。

ChromeとFirefoxで実行しましたが、それは問題ありません。

ヒント?

PS:私はオペラ11.2、Linuxの

+0

jsfiddleで例を設定できますか? – Jivings

+0

あなたは 'win.close()'を使いましたか – mgraph

+0

@mgraphそうする必要があります。 – Jivings

答えて

1

これはOperaのバージョンでうまく動作します。少なくとも、一緒に入れたテストケースでは、hereです。

ウィンドウを手で閉じることもボタンで閉じることもでき、closedプロパティは正しい値を示します。

私はLinuxでOperaバージョン11.61を使用しています。


ここにテストケースのコードを示します。

var popup = {}; 

function pop() { 
    popup = window.open('foo', 'foo', "menubar=no,location=no,resizable=yes,scrollbars=yes,status=no,width=200,height=200"); 
}  
function unpop() { 
    popup.close(); 
} 
function check() { 
    alert(({}).toString.call(popup) + ' closed: ' + popup.closed); 
} 

var b1 = document.body.appendChild(document.createElement('button')); 
var b2 = document.body.appendChild(document.createElement('button')); 
var b3 = document.body.appendChild(document.createElement('button')); 

b1.textContent = 'open'; 
b2.textContent = 'close'; 
b3.textContent = 'check'; 

b1.onclick = pop; 
b2.onclick = unpop; 
b3.onclick = check; 
0

を使用しています それはオペラのバグのように見えます。 http://www.highdots.com/forums/javascript/closing-popup-window-new-opera-45642.html

注応答:

Eマイケル・ブラントが書いた:

がこれを確認するため、およびバグレポートを提出いただきありがとうございます私は、バグレポートを開く誰かのこのリソースを発見しました。 snipこれは既知のバグと回帰ですが、すぐに修正する必要がありますが、次のマイナーリリースで修正が になるとは保証できません。タイムフレームを提案することはできません。申し訳ありません。 不都合が発生しました。

1

Operaをアップグレードしてください。特定の以前のバージョンでは正しいクローズドレポートを破った既知のバグがありましたが、最新のもので修正する必要があります。

関連する問題