|
Страници по тази тема: 1 | 2 | (покажи всички)
Тема
|
мозили, опери и хистори
|
|
Автор |
Microsoft (член) |
Публикувано | 01.12.06 17:20 |
|
Привет,
имам 2 файла а.хтм и б.хтм, изглеждат така:
a.htm
-----
[code]
<HTML><HEAD>
<script>alert('a.htm')</script>
</HEAD><BODY>
this is a.htm
<a href='b.htm'>go to b.htm</a>
</BODY></HTML>
[/code]
b.htm
-----
[code]
<HTML><HEAD>
<script>
function goback(){window.history.go(-1)}
</script>
</HEAD><BODY>
this is b.htm
<a href='#' onClick=goback()>go back</a>
</BODY></HTML>
[/code]
В ИЕ7 работят нормално.
В Опера, при кликване на го бак в б.хтм се преминава към а.хтм, но скрипта в началото на а.хтм не се изпълнява.
При фирефох е още по-странно - при кликване на го бак в б.хтм се преминава към а.хтм, скрипта в а.хтм не се изпълнява, след което моментално браузъра пак преминава към б.хтм от само себе си - става много бързо, но все пак се забелязва.
Защо е така и как да го направя да работи в опера & фф като в ИЕ ?
| |
Тема
|
Re: мозили, опери и хистори
[re: Microsoft]
|
|
Автор |
ghs (v.2) |
Публикувано | 01.12.06 18:31 |
|
знаеш къде трябва да се върне, не ползвай window.history.go(-1) ами window.location
| |
Тема
|
Re: мозили, опери и хистори
[re: ghs]
|
|
Автор |
Microsoft (член) |
Публикувано | 01.12.06 19:09 |
|
всъщност не знам къде трябва да се върне.
Кода е само за да покажа проблема, но б.хтм може да се отвори от много файлове и искам да се върна откъдето идвам, а не да отворя определен файл.
Мислех да използвам реферер вместо хистори, но не е сигурно - прекалено много неща режат реферерите.
Редактирано от Microsoft на 01.12.06 19:31.
| |
Тема
|
Re: мозили, опери и хистори
[re: Microsoft]
|
|
Автор |
ghs (v.2) |
Публикувано | 01.12.06 20:10 |
|
document.referrer не реже нищо.
можеш и да ползваш нещо на сървърен език
с location също се "връщаш", но по "шмекерски" начин
за друго не се сещам
| |
Тема
|
Re: мозили, опери и хистори
[re: ghs]
|
|
Автор |
Microsoft (член) |
Публикувано | 01.12.06 22:03 |
|
самото document.referrer не реже нищо, но много програми режат document.referrer. Примерно нортънския файъруол ги реже по дефолт и на всяка страница която отворя, независимо как, реферера е "" - празен. И трябва доста да ровиш из разните му опции за да го накараш да престане.
Не искам да ползвам сървърен език, а не виждам как да се върна на предишната страница (независимо коя е) с location
| |
|
с document.referrer но щом го маха тоз firewall...
с location имах предвид window.location=document.referrer;
пробвай тогаз с
файл 1
<а хреф="файл2.хтмл?файл=име на файла(файл1 в случая)">линк файл 2</а>
файл 2
тука идва нещо което да взима тоз файл от адреса и да го слага в history.back, window.location или каквото там ти хрумне
| |
|
10x, това сигурно ще работи, но не ми върши работа в конкретния случай защото линковете към 2.хтм не ги създавам аз и съответно не мога да им закача ?........
Наистина е странно че мозилите и оперите не могат да свършат като хората нещо толкова елементарно, след всичките приказки за съответствие със 'стандартите' ..бла бла ..
| |
|
а защо всъщност не ползваш window.history.back()? Поддържа се от всички браузъри...
There are three determined states the cat could be in: Alive, Dead, and Bloody Furious.
| |
|
пробвах и това.
Поведението на браузърите е абсолютно същото, без разлика дали използвам
history.go(-1) или history.back()
| |
Тема
|
Re: Хм...
[re: Microsoft]
|
|
Автор | headhunter (Нерегистриран) |
Публикувано | 05.12.06 21:11 |
|
Ами пробвай да записваш с JavaScript в cookie последната страница на която си бил, а после да използваш window.location.
Аз лично ползвам сесии, но ако бачкаш само в html и js, cookies са решение.
| |
|
Страници по тази тема: 1 | 2 | (покажи всички)
|
|
|