У меня работает следующее:
<div id="divref">
<script>
window.onload = domainRef;
function domainRef() {
var ref = document.referrer.toString();
document.getElementById("test").value = ref;
}
</script>
</div>
<input type="hidden" id="test" value="">
Проблема в том, что, скорее всего, DOM не был полностью загружен при запуске события onpageshow
. Аналогичным решением является запуск функции с использованием атрибута события onload
для элемента body.
<body onload=domainRef()>
<div id="divref">
<script>
function domainRef() {
var ref = document.referrer.toString();
document.getElementById("test").value = ref;
}
</script>
</div>
<input type="hidden" id="test" value="">
</body>
Для последнего решения я создал jsFiddle , где я удалил скрытый атрибут, чтобы показать поле ввода с результирующим значением.