Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Problem sa Internet Explorerom 7 i to samo preko servera

[es] :: Javascript i AJAX :: Problem sa Internet Explorerom 7 i to samo preko servera

[ Pregleda: 2247 | Odgovora: 9 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Lord_Nenad
Lord_Nenad
Zvornik

Član broj: 143541
Poruke: 170
188.124.200.*



+8 Profil

icon Problem sa Internet Explorerom 7 i to samo preko servera14.10.2010. u 15:59 - pre 164 meseci
Pozdrav,

Pravim sajt i jedan deo javascripte treba da zabrani klik na nazad u browseru i to samo na pojedinim stranicama.
Evo scripte:

Code:

function recallhashcheck()
{
setTimeout("checkhashb()",50);
}



function checkhashb() {
if (String(window.location.href).indexOf("#back") != -1) {

window.location.hash = "#";
document.location.hash = "#";
location.hash = "#";


if ( document.getElementById("ctl00_LeadSiteContent_BackBtn") )
{
if ( document.getElementById("ctl00_LeadSiteContent_BackBtn").type == "button" )
{
document.getElementById("ctl00_LeadSiteContent_BackBtn").click();
}
}

if ( document.getElementById("ctl00_LeadSiteContent_btnBack") )
{
if ( document.getElementById("ctl00_LeadSiteContent_btnBack").type == "button" )
{
document.getElementById("ctl00_LeadSiteContent_btnBack").click();
}
}
}
recallhashcheck();
}



if (document.getElementById("ctl00_LeadSiteContent_BackBtn")||document.getElementById("ctl00_LeadSiteContent_btnBack")||document.getElementById("ctl00_LeadSiteContent_btnCancel")||document.getElementById("ctl00_LeadSiteContent_Cancelbtn")) {

for ( i = 0; i < 3; i++ ) {

var randomnumber=Math.floor(Math.random()*110000)

window.location.hash = "#back_" + randomnumber;
document.location.hash = "#back_" + randomnumber;
location.hash = "#back_" + randomnumber;

}

window.location.hash = "#";
document.location.hash = "#";
location.hash = "#";

setTimeout("checkhashb()",50);

}



Ovo se radi preko hash istorije, ova javascript je postavljena na dnu stranice...

Radi dobro na svim browserima, ne izbaci gresku, jedino na Internet Exploreru 7 ne radi...

Ja bih i uspeo da napravim, ali jedino na serveru imam ovakvu gresku. Kad skinem komepletnu stranicu na svoj racunar sve radi kako treba.
To me jos vise zbunjuje...

Uradi se prvi deo, ali kao da se nikad ne pozove:

setTimeout("checkhashb()",50);

Ili postoji neka greska koja zabrani ponavljanje...

Treba mi bas brzo pomoc.




Hvala vam...
 
Odgovor na temu

Nikola Poša
Backend (PHP) developer
Beograd

Član broj: 173839
Poruke: 1616
*.adsl-a-1.sezampro.yu.



+33 Profil

icon Re: Problem sa Internet Explorerom 7 i to samo preko servera14.10.2010. u 17:48 - pre 164 meseci
Ovako na prvi pogled, čini mi se da imaš malo previše rekurzije u tom tvom kôdu... Jel imaš uključen neki JS debugger u IE-u?
 
Odgovor na temu

Lord_Nenad
Lord_Nenad
Zvornik

Član broj: 143541
Poruke: 170
188.124.200.*



+8 Profil

icon Re: Problem sa Internet Explorerom 7 i to samo preko servera14.10.2010. u 17:57 - pre 164 meseci
Nemam nikakav debugger, imam samo onaj osnovni, ono da izbaci gresku i to je skroz nedefinisano...

Cega ima previse?

Ali ne razumem, ako scripta ne radi na serveru, kako radi dok je na mom racunaru?
 
Odgovor na temu

Nikola Poša
Backend (PHP) developer
Beograd

Član broj: 173839
Poruke: 1616
*.adsl-a-1.sezampro.yu.



+33 Profil

icon Re: Problem sa Internet Explorerom 7 i to samo preko servera14.10.2010. u 18:03 - pre 164 meseci
btw Možda si sve to mogao efikasnije da uradiš ovako:
Code:
(function f() {
    setTimeout(function() {
        //ovde ide kôd tvoje f-je checkhashb()

        f();
    },50);
})();

I to bi se sve nalazilo u tom if-u na kraju tvog kôda, umesto tog dela gde pozivaš setTimeout().
 
Odgovor na temu

Lord_Nenad
Lord_Nenad
Zvornik

Član broj: 143541
Poruke: 170
188.124.200.*



+8 Profil

icon Re: Problem sa Internet Explorerom 7 i to samo preko servera14.10.2010. u 18:08 - pre 164 meseci
Valjda je to isto?

E, a da li bi pomoglo setInterval?

I mislim da je greska negde u ovom delu:

Code:

if (String(window.location.href).indexOf("#back") != -1) {

}


Da li treba ovo drugacije nekako da bude?
 
Odgovor na temu

Nikola Poša
Backend (PHP) developer
Beograd

Član broj: 173839
Poruke: 1616
*.adsl-a-1.sezampro.yu.



+33 Profil

icon Re: Problem sa Internet Explorerom 7 i to samo preko servera14.10.2010. u 18:43 - pre 164 meseci
Pa probaj bez poziva te String() funkcije, jer href svojstvo location objekta je već string.

A i skrati sebi muke, ubaci neki JS debugger u IE, npr.:
IE Dev Toolbar
Web Development Helper
 
Odgovor na temu

Lord_Nenad
Lord_Nenad
Zvornik

Član broj: 143541
Poruke: 170
188.124.200.*



+8 Profil

icon Re: Problem sa Internet Explorerom 7 i to samo preko servera14.10.2010. u 20:05 - pre 164 meseci
Izgleda da IE7 ne moze da prepozna kad se menja hash vrednost, a ne cela lokacija...

Jer stalno vidi lokaciju kao: lokacija + "#"

Iako je gore promenjeno u "#back_23958"...

Jel postoji neka druga opcija da se proveri adresa?

Proveravao sam sa:

Code:

window.location.href
document.location.href
location.href


I nijedno ne moze da pronadje pravu vrednost...
Samo prikazuje kao: lokacija + "#"



Da li neko zna kako drugacije da se proveri adresa?
 
Odgovor na temu

Nikola Poša
Backend (PHP) developer
Beograd

Član broj: 173839
Poruke: 1616
*.adsl-a-8.sezampro.rs.



+33 Profil

icon Re: Problem sa Internet Explorerom 7 i to samo preko servera14.10.2010. u 20:13 - pre 164 meseci
http://www.w3schools.com/jsref/prop_loc_hash.asp
 
Odgovor na temu

Lord_Nenad
Lord_Nenad
Zvornik

Član broj: 143541
Poruke: 170
188.124.200.*



+8 Profil

icon Re: Problem sa Internet Explorerom 7 i to samo preko servera14.10.2010. u 20:25 - pre 164 meseci
Da, znam kako radi hash...

Ali ja vidim "#back_98676" gore u address baru, ali kad ukucam:

Code:

javascript: alert(location.hash);


Izbaci mi samo "#"... Cak i kad ne pise gore nista, ako pritiscem dovoljno puta nazad pojavi se lokacija bez "#", i cak i tad kad ukucam ovo gore pojavi mi se da je hash "#".


Isto vazi i za "location.href"...
 
Odgovor na temu

Lord_Nenad
Lord_Nenad
Zvornik

Član broj: 143541
Poruke: 170
188.124.200.*



+8 Profil

icon Re: Problem sa Internet Explorerom 7 i to samo preko servera14.10.2010. u 21:26 - pre 164 meseci
Kao da IE uopste ne otvara stranice sa hash...

Stranicu mozete naci na ovoj adresi:

http://www universallinesins com/final/business.php

Ukucajte ZIP kod: 96140

I videcete kako se menja gore adresa i na kraju ostane na:
http://www universallinesins com/final/Business/BusinessInfo.php?add=business#

I kad pritisnete nazad na browseru videcete da se zameni i opet vrati na adresu + "#", ali je kliknuto Go back dugme...

Ali uopste nece da radi sa Internet Explorerom...


I nesto sto je skroz drugacije, skroz nejasno, je to sto scripta nekad radi, a nekad ne...
Kao npr na:

http://www universallinesins com/final/auto.php

Ne znam uopste od cega to zavisi...

SetTimeout radi dobro, jer stalno proverava lokaciju, ali ne znam zasto nekad radi a nekad ne...
 
Odgovor na temu

[es] :: Javascript i AJAX :: Problem sa Internet Explorerom 7 i to samo preko servera

[ Pregleda: 2247 | Odgovora: 9 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.