2009-08-14 4 views
0

誰も私はjavascriptのクッキー配列にwindow.open(URL)を割り当てることができます知っていますか?私はwindow.open(url)をjavascriptのクッキー配列に割り当てることができる方法はありますか?

以下

===文字列

window.open ==

var expiredays = 30 
var exdate=new Date(); 
exdate.setDate(exdate.getDate()+expiredays); 
document.cookie="childWindowHandles["+num+"] =" +window.open(url)+ 
((expiredays==null) ? "" : ";expires="+exdate.toGMTString()); 
+2

達成しようとしている効果は何ですか? –

+0

あなたはそれを文字列として入れて、あなたに戻ってくるコードを評価することができますが、なぜあなたはそれをやりたいのですか? – Tres

+0

下記の答えとして代替方法を追加しました。 – Tres

答えて

0

document.cookie ....私は、現時点で使用されるコードですが、本当に私のためによく働いていないように見えます=

オブジェクトです!==文字列

ので

document.cookつまり、!== window.open

0

window.openを呼び出すときに、開きたいウィンドウのクッキー配列にuri文字列を割り当て、クッキーから引き抜く方がよいでしょう。クッキーにコードや機密データを挿入することは、良い習慣でも安全でもありません。取ら

機能:http://www.quirksmode.org/js/cookies.html

function createCookie(name,value,days) { 
    if (days) { 
     var date = new Date(); 
     date.setTime(date.getTime()+(days*24*60*60*1000)); 
     var expires = "; expires="+date.toGMTString(); 
    } 
    else var expires = ""; 
    document.cookie = name+"="+value+expires+"; path=/"; 
} 

function readCookie(name) { 
    var nameEQ = name + "="; 
    var ca = document.cookie.split(';'); 
    for(var i=0;i < ca.length;i++) { 
     var c = ca[i]; 
     while (c.charAt(0)==' ') c = c.substring(1,c.length); 
     if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length); 
    } 
    return null; 
} 

function eraseCookie(name) { 
    createCookie(name,"",-1); 
} 

は、次に、あなたが行くことができる:

createCookie('openUri', uriToOpen); 

var openUri = readCookie('openUri'); 

if (openUri) { 
    window.open(openUri, 'myWindow'); 
} 

またはそのような何かを。

これが役に立ちます。

関連する問題