вы могли бы установить свое собственное имя окна, точный синтаксис сейчас мне ускользает, но вы можете использовать текущее время и идентификатор сессии, чтобы создать уникальный идентификатор при загрузке окна, а затем использовать этот идентификатор
Это будет сделано так же, как вы устанавливаете имя в функции javascript window.open (), (но вы можете сделать это самостоятельно, вместо нового окна)
Google показывает:
self.window.name = myclass.getUniqueWindowId (thisSession);
UPDATE
Что касается необходимости сохранить это из обновления в обновление, я провел несколько тестов, и похоже, чтобы сохранить его из обновления в обновление. Используя Firefox 3, при начальной загрузке имя окна остается пустым, и нажимая CTRL + R снова и снова, и имя окна заполняется. Затем я прокомментировал настройку кода имени и перезагрузил, и он все еще сохранил имя.
<script type="text/javascript">
alert( self.window.name );
self.window.name = "blah";
</script>
UPDATE
Я должен обратить внимание на комментарий ниже о плагине jQuery 'jquery-session', который действительно работает и предлагает намного больше, чем то, что обсуждалось здесь.
Хотя , следует также четко указать, что он опирается на веб-хранилище HTML5, не поддерживается старыми версиями IE .
Корпоративный по-прежнему сильно зависит от IE 7 («и ниже» здесь, в Бразилии).
На основе self.window.name
, решения для всего, что не соответствует HTML5, я предлагаю следующий фрагмент кода в качестве кросс-браузерного решения:
<script src="http://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script>
<script language="javascript" type="text/jscript">
//----------------------------------------------------------------------
//-- guarantees that window.name is a GUID, and that it would
//-- be preserved whilst this window's life cicle
//----------------------------------------------------------------------
//-- window.name will be set to "GUID-<SOME_RANDOM_GUID>"
//----------------------------------------------------------------------
$(window).load(
function () {
//----------------------
var GUID = function () {
//------------------
var S4 = function () {
return(
Math.floor(
Math.random() * 0x10000 /* 65536 */
).toString(16)
);
};
//------------------
return (
S4() + S4() + "-" +
S4() + "-" +
S4() + "-" +
S4() + "-" +
S4() + S4() + S4()
);
};
//----------------------
if (!window.name.match(/^GUID-/)) {
window.name = "GUID-" + GUID();
}
}
) //--------------------------------------------------------------------
</script>
Я нашел функцию GUID здесь (для которой я предложил некоторую очистку кода).